← Back to team overview

keryx team mailing list archive

[Merge] lp:~jacseen/keryx/unstable into lp:keryx/unstable

 

Jack N has proposed merging lp:~jacseen/keryx/unstable into lp:keryx/unstable.

    Requested reviews:
    Keryx Admins (keryx-admins)


New feature, Checksums for download debs.
checksums for package index lists not checked yet, have to be extracted from Release filesThe attached diff has been truncated due to its size.
-- 
https://code.launchpad.net/~jacseen/keryx/unstable/+merge/16885
Your team Keryx Development Team is subscribed to branch lp:keryx/unstable.
=== added file 'app.fil'
--- app.fil	1970-01-01 00:00:00 +0000
+++ app.fil	2010-01-06 01:45:25 +0000
@@ -0,0 +1,20 @@
+keryx.py
+setup.py
+./lib/__init__.py
+./lib/config.py
+./lib/consts.py
+./lib/log.py
+./lib/plugins.py
+./lib/project.py
+./lib/wxkeryx/__init__.py
+./lib/wxkeryx/delayedresult.py
+./lib/wxkeryx/download.py
+./lib/wxkeryx/editor.py
+./lib/wxkeryx/main.py
+./lib/wxkeryx/misc.py
+./lib/wxkeryx/options.py
+./lib/wxkeryx/startDialog.py
+./plugins/ColorMap.py
+./plugins/Debian.py
+./plugins/Search.py
+./plugins/Update.py

=== added directory 'dlls'
=== added file 'dlls/gdiplus.dll'
Binary files dlls/gdiplus.dll	1970-01-01 00:00:00 +0000 and dlls/gdiplus.dll	2010-01-06 01:45:25 +0000 differ
=== added file 'dlls/msvcp71.dll'
Binary files dlls/msvcp71.dll	1970-01-01 00:00:00 +0000 and dlls/msvcp71.dll	2010-01-06 01:45:25 +0000 differ
=== added directory 'doc'
=== renamed directory 'doc' => 'doc.moved'
=== added file 'doc/ChangeLog'
--- doc/ChangeLog	1970-01-01 00:00:00 +0000
+++ doc/ChangeLog	2010-01-06 01:45:25 +0000
@@ -0,0 +1,78 @@
+Keryx 0.92.4 (Under development)
+-------------
+Improvements:
+ * Added examples to keryx.conf
+ * Made proxy options GUI more user-friendly
+ * Added Update Status button to GUI
+
+Keryx 0.92 (20 February 2009)
+-------------
+Improvements:
+  * Added configuration file support
+  * Added Sources editor
+  * Added folder options
+  * Added quick open to start dialog
+  * Added proxy support
+  * Added a color map index
+  * Added translation support
+  * Added options
+  * Added automatic update checking
+ 
+Bugfixes:
+  * Fixed improper debian package version comparing
+  * Checks Windows disk free space
+  
+Known Bugs:
+  * Some dependencies are not packages, but other packages Provide the dependency
+
+Keryx 0.91 (31 December 2008)
+-------------
+Improvements:
+  * wxWidgets interface
+  * Speed improvements
+  * Threading for a more responsive interface
+  * Searching
+  * Windows binary    
+  * New logo
+  
+Known Bugs:
+  * Windows binary cannot display text printed to console  
+
+Keryx 0.12 (26 August 2008)
+-------------
+Added:
+  * Download.py:
+    - Allows overwriting of files if they already exist
+    - If exists and not overwriting, notifies user that file already exists
+  * Ubuntu.py:
+    - Overwrites package lists if 'internet' is selected
+
+Bugfixes:
+  * Fixed #259924 in Ubuntu.py
+  * Internet package lists are downloaded correctly
+
+Keryx 0.11.1 (19 August 2008)
+-------------
+Bugfixes:
+  * Fixed bug #258912 in Ubuntu.py
+  * Packages duplicates are removed
+  * Fixed an issue with repositories with only one section
+
+Keryx 0.11 (10 August 2008)
+-------------
+Added:
+  * Ubuntu: 
+    - Calculates package dependencies and downloads them
+    - Caches package lists to project folder
+    - Looks in pkglists folder for Local Files
+    - Checks to see if package is already downloaded
+    - Installed packages are displayed if package list is empty on project refresh
+Bugfixes:
+  * Small bugfixes
+  * Ubuntu: 
+    - Status file moved to pkglists folder
+    - Correctly parses deb entries with multiple sections
+  
+Keryx 0.10 (31 July 2008)
+-------------------------
+  * Initial Public Release

=== added file 'doc/INSTALL'
--- doc/INSTALL	1970-01-01 00:00:00 +0000
+++ doc/INSTALL	2010-01-06 01:45:25 +0000
@@ -0,0 +1,24 @@
+==========================
+        Installing:
+==========================
+
+Windows: No installation required. Just run keryx.exe from the win32 directory
+
+Linux: No install required as long as Python and wxPython are installed.
+       Just run 'python keryx.py' or './keryx.py' if it is set as executable.
+
+==========================
+        Building:
+==========================
+
+py2exe is required to build a proper windows executable.
+
+WARNING: Issues with Python 2.6 prevent succesful builds.
+
+Run 'python setup.py py2exe' to build a win32 binary. This has been tested using
+the following:
+
+Python 2.5.4
+wxPython 2.8.9.1 unicode
+Py2exe 0.6.9
+Pywin32
\ No newline at end of file

=== added file 'doc/LICENSE'
--- doc/LICENSE	1970-01-01 00:00:00 +0000
+++ doc/LICENSE	2010-01-06 01:45:25 +0000
@@ -0,0 +1,350 @@
+		    GNU GENERAL PUBLIC LICENSE
+		       Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+			    Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+		    GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable
+    source code, which must be distributed under the terms of Sections
+    1 and 2 above on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable.  However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+  5. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Program or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+  9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation.  If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission.  For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this.  Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+			    NO WARRANTY
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+		     END OF TERMS AND CONDITIONS
+
+	    How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+    Gnomovision version 69, Copyright (C) year  name of author
+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+  `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+  <signature of Ty Coon>, 1 April 1989
+  Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs.  If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library.  If this is what you want to do, use the GNU Library General
+Public License instead of this License.
+
+  In addition, as a special exception, the copyright holders give
+  permission to link the code of portions of this program with the OpenSSL
+  library.
+  You must obey the GNU General Public License in all respects for all of
+  the code used other than OpenSSL. If you modify file(s) with this
+  exception, you may extend this exception to your version of the file(s),
+  but you are not obligated to do so. If you do not wish to do so, delete
+  this exception statement from your version. If you delete this exception
+  statement from all source files in the program, then also delete it here.

=== added file 'doc/LocalRepo-Add.py'
--- doc/LocalRepo-Add.py	1970-01-01 00:00:00 +0000
+++ doc/LocalRepo-Add.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,120 @@
+# This script is based off of mac9416's QuickRepo.py script
+# with some behavioral changes made by jacseen
+#
+# Designed for use with Keryx 0.92.x
+#
+
+import sys, os, os.path, shutil
+from gzip import GzipFile
+from optparse import OptionParser
+
+parser = OptionParser(description='%prog uses a set of package lists to assemble a debian repository structure from a pile of packages. Designed for use with Keryx inside \'projects/<projectname>\'.')
+
+parser.add_option('-l', '--lists', dest='listdir', default='./lists', metavar='DIR', help='Dir from which the lists are to be loaded. [default: %default]')
+parser.add_option('-p', '--pkgs', dest='packdir', default='./packages', metavar='DIR', help='Dir of packages to process. [default: %default]')
+parser.add_option('-r', '--repo', dest='repodir', default='./quick_repo', metavar='DIR', help='Dir for the repo. Will be added to if it exists, created if not. [default: %default]')
+parser.add_option('-m', action='store_true', dest='move', default=False, help='Move the packages to the repo. Always deletes source deb, even if not \'-o\'. Default is to copy packages.')
+parser.add_option('-o', action='store_true', dest='overwrite', default=False, help='If packages already exist in repo, they will overwritten. Default is to leave packages untouched.')
+
+(options, args) = parser.parse_args()
+options.listdir = os.path.abspath(options.listdir)
+options.packdir = os.path.abspath(options.packdir)
+options.repodir = os.path.abspath(options.repodir)
+
+if not os.path.isdir(options.listdir): parser.error('There is somethin\' wrong with you, son! You don\'t even have a %s directory. Make sure that you are running this script from within an APT-type Keryx project.' % options.listdir)
+if not os.path.isdir(options.packdir): parser.error('What\'s this?! I can\'t find the %s directory. Try running this script from within an APT-type Keryx project.' % options.packdir)
+
+listfiles = os.listdir(options.listdir)
+packfiles = os.listdir(options.packdir)
+
+for i in listfiles[:]:
+    if (not i.endswith('Packages')) or (i.startswith('_')): listfiles.remove(i)
+
+
+def stripDotCom(text):
+    append = False
+    final = ''
+    for item in text.split('_'):
+        if item == 'dists': append = True
+        if append:
+            final = os.path.join(final, item)
+    return final
+
+def splitPacks(text):
+    filename = ''
+    packs = {}
+    for block in text.split('\n\n'):
+        for line in block.split('\n'):
+            if line.startswith('Filename: '):
+                filename = line[10:]
+        if filename != '':
+            packs.update({filename:block})
+    return packs
+
+def sendFile(src, dest, move):
+    if not move:                                                            # If user wanted the package copied...
+        print "Copying: " + os.path.split(pack[0])[-1] + "..."              # Then copy the deb into the repo.
+        shutil.copy(src, dest)
+    else:                                                                   # If user wanted package moved...
+        print "Moving: " + os.path.split(pack[0])[-1] + "..."               # then move deb and delete src
+        shutil.move(src, dest)
+    return
+
+count = 0
+lists = {}
+for filename in listfiles:
+    try:
+        listfile = open(os.path.join(options.listdir, filename), 'rb')
+    except:
+        print "Well, that list just wouldn't load: " + filename
+        continue
+    packs = splitPacks(listfile.read()) # splitPacks returns {packfilename:packtext, etc.}
+    listfile.close()
+    if lists.has_key(stripDotCom(filename)):       # If a list located in the same part of the repo has already been scanned...
+        lists[stripDotCom(filename)].update(packs) # Simply add the current data to that file.
+    else:                                          # Else...
+        lists.update({stripDotCom(filename):packs})# Add the new list!
+    countdup = len(lists[stripDotCom(filename)]) - len(packs)
+    count += 1
+    print "Loaded", count, "of", len(listfiles), "lists ->", str(len(packs)), "more packages,", str(countdup), "duplicates."
+
+for packlist in lists.iteritems():
+    packlisttext = ""
+    dirlist = os.path.abspath(os.path.join(options.repodir, packlist[0]))
+    for pack in packlist[1].iteritems():
+        dirpack = os.path.abspath(os.path.join(options.repodir, pack[0]))
+        packname = os.path.split(pack[0])[-1]
+        if packname in packfiles:                                               # If the file from the index file is in the packages directory...
+            if not os.path.exists(dirpack):                                     # If the package does not already exist in repo,
+                packlisttext += (pack[1] + '\n\n')                              # add the files' info to the new index file,
+                if not os.path.exists(os.path.dirname(dirpack)):                # and check if directory needs to be created.
+                    try:
+                        os.makedirs(os.path.dirname(dirpack))                   # If the destination dir doesn't exist, create it.
+                        print "Creating dir: " + os.path.dirname(pack[0])
+                    except:
+                        print "Failed creating dir: " + os.path.dirname(pack[0])
+                        pass
+                sendFile(os.path.join(options.packdir, packname), dirpack, options.move)
+            else:                                                               # Package already exists in repo
+                if options.overwrite:
+                    sendFile(os.path.join(options.packdir, packname), dirpack, options.move)
+                else:
+                    if options.move:
+                        print 'File exists ' + packname + ', deleting...'
+                        os.remove(os.path.join(options.packdir, packname))
+            packfiles.remove(packname)
+    if packlisttext != '':                                            # Only bother with the Packages.gz file if there is a reason
+        if not os.path.exists(os.path.dirname(dirlist)): 
+            try:
+                os.makedirs(os.path.dirname(dirlist))
+                print "Creating dir: " + os.path.dirname(packlist[0])
+            except:
+                print "Failed creating dir: " + os.path.dirname(packlist[0])
+                pass
+        print "Writing file: " + packlist[0] + '.gz'
+        packlistfile = file(dirlist + '.gz', 'ab')           # If repo already has this Packages.gz file then add the new files to it.
+        gzfile = GzipFile(dirlist, 'ab', 9, packlistfile)
+        gzfile.write(packlisttext)
+        gzfile.close()
+        packlistfile.close()
+

=== added file 'doc/README'
--- doc/README	1970-01-01 00:00:00 +0000
+++ doc/README	2010-01-06 01:45:25 +0000
@@ -0,0 +1,129 @@
+==========================
+         Keryx
+==========================
+      Version 0.92
+
+==========================
+     Contact/Support:
+==========================
+
+	Website: http://keryxproject.org
+	Email: Chris Oliver <excid3@xxxxxxxxx>
+    Launchpad Project: http://launchpad.net/keryx
+
+==========================
+         License:
+==========================
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+
+==========================
+       Requirements
+==========================
+
+Windows: None
+
+Linux: Python, wxPython
+
+Ubuntu users need the following packages in order to have wxPython successfully
+installed:
+
+libwxbase2.8-0
+libwxgtk2.8-0
+python-wxversion
+python-wxgtk2.8
+
+wxPython is only required for using Keryx's interface. Project creation can be
+done via command line parameters. See USAGE for more information.
+
+==========================
+Installation Instructions:
+==========================
+
+Extract the Keryx archive anywhere (typically a usb device).
+
+==========================
+          Usage:
+==========================
+Keryx is based around the concept of 'projects'. Each project keeps track of the
+software versions that are installed on that computer. To get started you must
+first create a project on that computer.
+
+If you are unable to install wxPython but have Python installed you can still
+create projects. In a console run:
+
+'python keryx.py --create <project name> <plugin name>'
+
+and Keryx will create a new project in the project directory. This is helpful
+for Ubuntu server users along with users who have not installed wxPython yet.
+The only <plugin name> currently available is debian.
+
+Once you have created this project, make sure you have a copy on your usb device
+that will be used to run Keryx from on a computer with highspeed internet.
+
+Keryx can be run on ANY computer with Python and wxPython installed, meaning
+Windows, Mac and Linux computers. Running Keryx on any Windows computer is
+nothing more than running 'keryx.exe'. If you are running Keryx using Python, cd
+to the directory and run 'python keryx.py' to start. Some environments support
+running a python application by double clicking it as well.
+
+After you have Keryx running on an internet connected host, downloading packages
+is as simple as opening your project and selecting the packages to download.
+Keryx will automatically select the package dependencies for you making sure
+that nothing is left behind. Any packages you download are saved to your
+project's folder in the 'packages' directory.
+
+When you are finished you can return to your project computer and install the
+packages through the usual way.
+
+==========================
+Uninstallation/Upgrading:
+==========================
+
+Extract the newest version over top, replacing all files.
+
+==========================
+         Thanks:
+==========================
+
+Buran Ayuthia
+John Gleissner
+mac9416
+Kevin Buente
+Douglass Clem
+Cory Thompson
+Mark James - Silk Icon Set - http://www.famfamfam.com/lab/icons/silk/
+Tiziano Tissino - ProportionalSplitter
+Ingelrest François - Plugin framework base
+heylove - Logo is based off areao.42-Icons
+Anyone else I forgot to mention
+
+==========================
+     Additional Notes:
+==========================
+
+Command line parameters:
+
+-h or --help                            Displays this message
+-v or --version                         Displays Keryx version number
+--create <project name> <plugin name>   Creates a new project in the default
+                                          directory with name of <project name>
+                                          and type project <plugin name>
+--config <file>                         Uses <file> to as configuration file
+
+Due to py2exe's nature, information printed to the console is NOT displayed.
+While the command line parameters will still work properly, no indication of
+success will be shown in the console. The information will still be written in
+the log files for further review.

=== added file 'doc/StatusMerge.py'
--- doc/StatusMerge.py	1970-01-01 00:00:00 +0000
+++ doc/StatusMerge.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,268 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Author: mac9416
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import os
+import sys
+
+def compare(status1, status2, older=True):
+    """Takes two status file strings and returns only packages in both (choosing
+       the older version of the two by default)
+    """
+    # Make each string a dict of package names : package entries
+    status = []
+    status2 = dict([[get_property(x, 'Package'), x] for x in status2.split('\n\n')])
+
+    for entry in status1.split('\n\n'):
+        if entry.strip() == '': continue  # Empty strings. Who needs them.
+        pkg_name = get_property(entry, 'Package')
+        if pkg_name in status2.keys():
+            ver1 = get_property(entry, 'Version')
+            ver2 = get_property(status2[pkg_name], 'Version')
+            if DpkgVersion(ver1) < DpkgVersion(ver2) or DpkgVersion(ver1) == DpkgVersion(ver2):
+                status.append(entry)
+            elif DpkgVersion(ver1) > DpkgVersion(ver2):
+                status.append(status2[pkg_name])
+
+    return '\n\n'.join(status)
+
+def get_property(pkg_str, prop):
+    """Takes a status file package entry and package property; returns value for
+       that property
+    """
+    for line in pkg_str.split('\n'):
+        if line.startswith(prop):
+            return line.split(':')[-1].strip()
+
+
+############ Minideblib's Version Compare Code ############
+
+
+# -*- coding: UTF-8 -*-
+# Small changes by Steve Kowalik, GPL (C) 2005
+# Scott James Remnant told me the license is MIT
+"""Parse and compare Debian version strings.
+
+This module contains a class designed to sit in your Python code pretty
+naturally and represent a Debian version string.  It implements various
+special methods to make dealing with them sweet.
+"""
+
+__author__    = "Scott James Remnant <scott@xxxxxxxxxxxx>"
+
+
+import re
+
+
+# Regular expressions make validating things easy
+valid_epoch = re.compile(r'^[0-9]+$')
+valid_upstream = re.compile(r'^[0-9][A-Za-z0-9+:.~-]*$')
+valid_revision = re.compile(r'^[A-Za-z0-9+.~]+$')
+
+# Character comparison table for upstream and revision components
+cmp_table = "~ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz+-.:"
+
+
+class VersionError(Exception): pass
+class BadInputError(VersionError): pass
+class BadEpochError(BadInputError): pass
+class BadUpstreamError(BadInputError): pass
+class BadRevisionError(BadInputError): pass
+
+class DpkgVersion(object):
+    """
+    Debian version number.
+
+    This class is designed to be reasonably transparent and allow you to write code like:
+
+    >>> s.version >= '1.100-1'
+
+    The comparison will be done according to Debian rules, so '1.2' will compare lower.
+
+    Properties:
+     - epoch: Epoch
+     - upstream: Upstream version
+     - revision: Debian/local revision
+    """
+
+    def __init__(self, ver):
+        """Parse a string or number into the three components."""
+        self.epoch = None
+        self.upstream = None
+        self.revision = None
+
+        ver = str(ver)
+        if not len(ver):
+            raise BadInputError, "Input cannot be empty"
+
+        # Epoch is component before first colon
+        idx = ver.find(":")
+        if idx != -1:
+            self.epoch = ver[:idx]
+            if not len(self.epoch):
+                raise BadEpochError, "Epoch cannot be empty"
+            if not valid_epoch.search(self.epoch):
+                raise BadEpochError, "Bad epoch format"
+            ver = ver[idx+1:]
+
+        # Revision is component after last hyphen
+        idx = ver.rfind("-")
+        if idx != -1:
+            self.revision = ver[idx+1:]
+            if not len(self.revision):
+                raise BadRevisionError, "Revision cannot be empty"
+            if not valid_revision.search(self.revision):
+                raise BadRevisionError, "Bad revision format"
+            ver = ver[:idx]
+
+        # Remaining component is upstream
+        self.upstream = ver
+        if not len(self.upstream):
+            raise BadUpstreamError, "Upstream version cannot be empty"
+        if not valid_upstream.search(self.upstream):
+            raise BadUpstreamError, "Bad upstream version format"
+
+        if self.epoch is not None:
+            self.epoch = int(self.epoch)
+
+    def getWithoutEpoch(self):
+        """Return the version without the epoch."""
+        str = self.upstream
+        if self.revision is not None:
+            str += "-%s" % (self.revision,)
+        return str
+
+    without_epoch = property(getWithoutEpoch)
+
+    def __str__(self):
+        """Return the class as a string for printing."""
+        str = ""
+        if self.epoch is not None:
+            str += "%d:" % (self.epoch,)
+        str += self.upstream
+        if self.revision is not None:
+            str += "-%s" % (self.revision,)
+        return str
+
+    def __repr__(self):
+        """Return a debugging representation of the object."""
+        return "<%s epoch: %r, upstream: %r, revision: %r>" \
+               % (self.__class__.__name__, self.epoch,
+                  self.upstream, self.revision)
+
+    def __cmp__(self, other):
+        """Compare two Version classes."""
+        other = DpkgVersion(other)
+
+        # Compare epochs only if they are not equal.
+        if self.epoch != other.epoch:
+            # Special cases for braindead packages
+            sepoch = self.epoch
+            oepoch = other.epoch
+            if sepoch is None:
+                sepoch = 0
+            if oepoch is None:
+                oepoch = 0
+            result = cmp(sepoch, oepoch)
+            if result != 0: return result
+
+        result = deb_cmp(self.upstream, other.upstream)
+        if result != 0: return result
+
+        result = deb_cmp(self.revision or "", other.revision or "")
+        if result != 0: return result
+
+        return 0
+
+    def is_native(self):
+        native = False
+        if not self.revision:
+            native = True
+        return native
+
+def strcut(str, idx, accept):
+    """Cut characters from str that are entirely in accept."""
+    ret = ""
+    while idx < len(str) and str[idx] in accept:
+        ret += str[idx]
+        idx += 1
+
+    return (ret, idx)
+
+def deb_order(str, idx):
+    """Return the comparison order of two characters."""
+    if idx >= len(str):
+        return 0
+    elif str[idx] == "~":
+        return -1
+    else:
+        return cmp_table.index(str[idx])
+
+def deb_cmp_str(x, y):
+    """Compare two strings in a deb version."""
+    idx = 0
+    while (idx < len(x)) or (idx < len(y)):
+        result = deb_order(x, idx) - deb_order(y, idx)
+        if result < 0:
+            return -1
+        elif result > 0:
+            return 1
+
+        idx += 1
+
+    return 0
+
+def deb_cmp(x, y):
+    """Implement the string comparison outlined by Debian policy."""
+    x_idx = y_idx = 0
+    while x_idx < len(x) or y_idx < len(y):
+        # Compare strings
+        (x_str, x_idx) = strcut(x, x_idx, cmp_table)
+        (y_str, y_idx) = strcut(y, y_idx, cmp_table)
+        result = deb_cmp_str(x_str, y_str)
+        if result != 0: return result
+
+        # Compare numbers
+        (x_str, x_idx) = strcut(x, x_idx, "0123456789")
+        (y_str, y_idx) = strcut(y, y_idx, "0123456789")
+        result = cmp(int(x_str or "0"), int(y_str or "0"))
+        if result != 0: return result
+
+    return 0
+
+############ End Minideblib's Version Compare Code ############
+
+
+if __name__ == '__main__':
+    # Open the status files and put the strings in a list.
+    status_list = []
+    for status in sys.argv[1:]:
+        try:
+            # Assume the full directory is given.
+            status_list.append(open(status, 'rb').read())
+        except IOError:
+            # Then again, maybe it's in the current directory.
+            status_list.append(open(os.path.join(os.getcwd(), status), 'rb').read())
+
+    status1 = status_list.pop(0)
+
+    for status2 in status_list:
+        status1 = compare(status1, status2)
+        print len(status1)
+
+    open(os.path.join(os.getcwd(), 'StatusMerge_out'), 'wb').write(status1)

=== added file 'doc/VerifyChecksums.py'
--- doc/VerifyChecksums.py	1970-01-01 00:00:00 +0000
+++ doc/VerifyChecksums.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,86 @@
+# original code from mac9416's script 'QuickRepo.py'
+# modified and repurposed by jaseen
+
+import os, os.path, hashlib
+#from gzip import GzipFile
+
+
+listdir   = os.path.join(os.getcwd(), 'lists')
+packdir   = os.path.join(os.getcwd(), 'packages')
+#hashtype = ('MD5sum: ', 'md5')
+hashtype = ('SHA1: ', 'sha1')
+
+if not os.path.exists(listdir):
+    print "There is somethin' wrong with you, son! You don't even have a ./lists directory. Make sure that you are running this script from within an APT-type Keryx project.'"
+if not os.path.exists(packdir):
+    print "What's this?! I can't find a ./packages directory. Make sure that you are running this script from within an APT-type Keryx project."
+listfiles = os.listdir(listdir)
+packfiles = os.listdir(packdir)
+
+def calcChecksum(filepath):
+    try:                            # This code originally found in doubledetector.py from http://sebsauvage.net/python/
+        file = open(filepath,'rb')  # some modifications made of course.
+        if hashtype[1] == 'md5':
+            digest = hashlib.md5()
+        elif hashtype[1] == 'sha1':
+            digest = hashlib.sha1()
+        else:
+            return '0'
+        data = file.read(65536)
+        while len(data) != 0:
+            digest.update(data)
+            data = file.read(65536)
+        file.close()
+    except:
+        return '0'
+    else:
+        return digest.hexdigest()
+
+
+def ParseLists(text):
+    filename = ''
+    hashsum = ''
+    packs = {}
+    for block in text.split('\n\n'):
+        for line in block.split('\n'):
+            if line.startswith('Filename: '):
+                filename = os.path.split(line[10:])[-1]
+            if line.startswith(hashtype[0]):
+                hashsum = line[len(hashtype[0]):]
+        if filename != '':
+            if hashsum == '':
+                print "A file without a '" + hashtype[0] + "', interesting: " + filename
+            else:
+                packs.update({filename:hashsum})
+    return packs
+
+count = 0
+lists = {}
+for filename in listfiles:
+    try:
+        listfile = open(os.path.join(listdir, filename), 'rb')
+    except:
+        print "Well, that list just wouldn't load: " + filename
+        continue
+    packs = ParseLists(listfile.read()) # ParseLists returns {packfilename:packmd5sum, etc.}
+    listfile.close()
+    lists.update(packs)         # Add the new list!
+    count += 1
+    print count, "read of", len(listfiles), "-", len(packs), "more names, ", len(lists), "unique"
+
+packlistsums = 0
+failed = 0
+nocalc = 0
+listsorted = sorted(lists.iterkeys())
+for key in listsorted:
+    if key in packfiles: # If the file from the index file is in the packages directory...
+        sum = calcChecksum(os.path.join(packdir, key))
+        packlistsums += 1
+        if sum != lists[key] and sum != '0':
+            os.remove(os.path.join(packdir, key))
+            print "Failed " + str(key) + ": Removed."
+            failed += 1
+        elif sum == '0':
+            print "Could not calc checksum", key
+            nocalc += 1
+print "Of", packlistsums, "debs processed,", failed, "failed,", nocalc, "could not be checked."

=== added file 'doc/keryx.conf'
--- doc/keryx.conf	1970-01-01 00:00:00 +0000
+++ doc/keryx.conf	2010-01-06 01:45:25 +0000
@@ -0,0 +1,28 @@
+#### Default values ####
+LogDir=../logs
+PluginsDir=../plugins
+ProjectsDir=../projects
+PixmapsDir=../pixmaps
+ThemesDir=../pixmaps/themes
+DefaultTheme=../pixmaps/themes/default
+CurrentTheme=../pixmaps/themes/default
+
+#### Examples ####
+
+#LogDir=../logs
+#LocaleDir=../locale
+#PackagesDir=../packages
+#PixmapsDir=../pixmaps
+#PluginsDir=../plugins
+#ProjectsDir=../projects
+#ThemesDir=../pixmaps/themes
+#DefaultTheme=../pixmaps/themes/default
+#CurrentTheme=../pixmaps/themes/default
+
+### Proxy configuration ###
+# Leave ProxyUsername and ProxyPassword commented 
+# when the proxy does not require them.
+
+#HTTPProxy=http://127.0.0.1:8880
+#ProxyUsername=username
+#ProxyPassword=password

=== added file 'keryx.py'
--- keryx.py	1970-01-01 00:00:00 +0000
+++ keryx.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,114 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import os.path, sys
+from lib import consts
+
+#####################
+# Set configuration #
+#####################
+if ('--config' in sys.argv): # If config is specified
+    index = sys.argv.index('--config')
+    try: filename = sys.argv[index + 1]
+    except: 
+        print 'ERROR: No config filename given'
+        sys.exit(1)
+        
+    
+    # Reinitialize consts if the a specific file has been passed
+    import lib.config
+    lib.config.fromFile(filename)
+
+# Else if file_config exists, load it
+elif os.path.exists(consts.file_config):
+    import lib.config
+    lib.config.fromFile(consts.file_config)
+    
+# Import log and project AFTER configuration has been set
+from lib import log, project
+
+################
+# Translations #
+################
+try:
+    import gettext, locale
+    gettext.install(consts.appNameShort, consts.dirLocale, unicode=True)
+    
+    lang = locale.getdefaultlocale()[0]
+    lang = gettext.translation(consts.appNameShort, consts.dirLocale, languages=[lang])
+    lang.install()
+except: pass
+
+#TODO: Set wxWidgets translation information
+ 
+###################
+# Parse arguments #
+###################
+if ('--help' in sys.argv) or ('-h' in sys.argv):
+    log.info(consts.parameters)
+    sys.exit(0)
+
+if ('--version' in sys.argv) or ('-v' in sys.argv):
+    log.info('%s %s' % (consts.appName, consts.appVersion))
+    sys.exit(0)
+
+if ('--create' in sys.argv):
+    import platform
+    from lib import plugins, project
+    try:
+        index = sys.argv.index('--create')
+        name = sys.argv[index + 1]
+        plugin_name = 'debian'
+    except:
+        log.error(_('Unable to create project'))
+        sys.exit(1)
+    plugins.load(consts.dirPlugins, '', False) # Don't load interface plugins
+    for item in range(0,len(plugins.OSPluginList)):
+        if plugin_name == plugins.OSPluginList[item][0].lower():
+            # Append new project
+            project.projects.append(project.Project())
+            proj = project.projects[len(project.projects) - 1]
+    
+            # Create project
+            success, filename = proj.CreateKeryx(name, 
+                                            plugins.OSPluginList[item][0],
+                                            plugins.OSPluginList[item][1])
+
+            if success: 
+                log.info(_('Project created successfully.'))
+                sys.exit(0)
+    log.error(_('Unable to create project.'))
+    log.info(_('Make sure a project by this name does not already exist and you have selected the right plugin for this project.'))
+    sys.exit(1)
+
+#############################
+# Attempt to load interface #
+#############################
+#try:
+if 1:
+    import lib.wxkeryx
+    lib.wxkeryx.Start()
+#except Exception, e:
+    #print e
+#    log.error(_('Unable to load interface.'))
+#    log.info(_('Make sure you have wxPython installed.'))
+#    log.info(_('Read the README for details on installing wxPython'))
+#    log.info(_('You can you \'python keryx.py --create\' to create a new project through the command-line if you do not have wxPython installed'))
+#    log.info(_('Use \'python keryx.py --help\' to see all command-line parameters.'))
+#    sys.exit(1)

=== renamed file 'keryx.py' => 'keryx.py.moved'
=== added directory 'lib'
=== renamed directory 'lib' => 'lib.moved'
=== added file 'lib/__init__.py'
--- lib/__init__.py	1970-01-01 00:00:00 +0000
+++ lib/__init__.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,69 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import os
+
+def driveFreeSpace():
+    """ retrieves the cwd's filesystem stats """
+    if os.name == 'posix': # get free space if they have statvfs
+        data = os.statvfs(os.getcwd())
+        return convert_file_size(float(data[0] * data[4]))
+    if os.name == 'nt':
+        import win32file
+        drive = os.path.splitdrive(os.getcwd())[0] # Gets drive letter
+        d_size = win32file.GetDiskFreeSpaceEx(drive)
+        return convert_file_size(d_size[2])
+    # unsupported OS, return error
+    return 'Unavailable'
+    
+def convert_file_size(bytes):
+    """ Converts file size from bytes to appropriate size """
+    kb = bytes / 1024.0
+    if kb < 1000:
+        return '%.1f %s' % (kb, 'KiB')
+    mb = kb / 1024.0
+    if mb < 1000:
+        return '%.1f %s' % (mb, 'MiB')
+    gb = mb / 1024.0
+    return '%.2f %s' % (gb, 'GiB')
+
+def browserOpen(url):
+    """ Opens default browser to url """
+    import webbrowser
+    webbrowser.open(url)
+
+def utf(desc):
+    """ Returns string in fully UTF compatible format """
+    new_word = ''
+    for letter in desc:
+        if ord(letter) > 128:
+            letter = chr(127)
+        new_word += letter
+    return new_word
+
+def joinUrl(first, last):
+    """ Returns full URL """
+    if first.endswith('/'):
+        if last.startswith('/'): return first + last[1:]
+        else:                    return first + last
+    else:
+        if last.startswith('/'): return first + last
+        else:                    return first + '/' + last
+
+
+

=== added file 'lib/config.py'
--- lib/config.py	1970-01-01 00:00:00 +0000
+++ lib/config.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,108 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import consts, os.path
+#from gettext import gettext as _
+
+def genDir(val): return os.path.abspath(os.path.join(os.getcwd(), val))
+
+def fromFile(filename):
+    # Import settings
+    try:
+        print 'Loading config: ' + filename
+        consts.file_config = filename
+        data = open(filename, 'r').read()
+        data = data.split('\n')
+        for item in data:
+            try:
+                key, val = item.split('=')
+                if key == 'LogDir': 
+                    consts.LogPath = val
+                    consts.dirLog = genDir(val)
+                    consts.fileLog = os.path.join(consts.dirLog, 'log')
+                if key == 'LocaleDir': 
+                    consts.LocalePath = val
+                    consts.dirLocale = genDir(val)
+#                if key == 'PackagesDir': 
+#                    consts.PackagesPath = val
+#                    consts.dirPackages = genDir(val)
+                if key == 'PixmapsDir': 
+                    consts.PixmapsPath = val
+                    consts.dirPixmaps = genDir(val)
+                    pixmapsChange()
+                if key == 'PluginsDir': 
+                    consts.PluginsPath = val
+                    consts.dirPlugins = genDir(val)
+                if key == 'ProjectsDir': 
+                    consts.ProjectsPath = val
+                    consts.dirProjects = genDir(val)
+                if key == 'ThemesDir': 
+                    consts.ThemesPath = val
+                    consts.dirThemes = genDir(val)
+                if key == 'DefaultTheme': 
+                    consts.ThemeDefaultPath = val
+                    consts.dirThemeDefault = genDir(val)
+                if key == 'CurrentTheme': 
+                    consts.CurrentThemePath = val
+                    consts.dirCurrentTheme = genDir(val)
+                    themeChange()
+                if key == 'HTTPProxy':
+                    consts.proxy_enabled = True
+                    consts.http_proxy = {'http':val}
+                if key == 'ProxyUsername': consts.proxy_username = val
+                if key == 'ProxyPassword': consts.proxy_password = val
+            except: pass
+        consts.file_config = filename # Set the file_config location, so that if the config is change, settings go back to there
+    except Exception, e: print e
+
+def pixmapsChange():
+    # Logo
+    consts.fileIco = os.path.join(consts.dirPixmaps,'keryx.ico')
+    consts.fileLogo = os.path.join(consts.dirPixmaps,'keryx.png')
+
+def themeChange():
+    # Load theme images
+    consts.icon_about = os.path.join(consts.dirCurrentTheme, 'about.png')
+    consts.icon_arrow_down = os.path.join(consts.dirCurrentTheme, 'arrow_down.png')
+    consts.icon_arrow_up = os.path.join(consts.dirCurrentTheme, 'arrow_up.png')
+    consts.icon_bug_report = os.path.join(consts.dirCurrentTheme, 'bug.png')
+    consts.icon_close = os.path.join(consts.dirCurrentTheme, 'close.png')
+    consts.icon_donate = os.path.join(consts.dirCurrentTheme, 'donate.png')
+    consts.icon_download = os.path.join(consts.dirCurrentTheme, 'download.png')
+    #icon_download_package = os.path.join(dirCurrentTheme, 'download_package.png')
+    consts.icon_downloaded = os.path.join(consts.dirCurrentTheme, 'downloaded.png')
+    consts.icon_error = os.path.join(consts.dirCurrentTheme, 'error.png')
+    consts.icon_find = os.path.join(consts.dirCurrentTheme, 'find.png')
+    consts.icon_help = os.path.join(consts.dirCurrentTheme, 'help.png')
+    consts.icon_home = os.path.join(consts.dirCurrentTheme, 'home.png')
+    consts.icon_layout = os.path.join(consts.dirCurrentTheme, 'layout.png')
+    consts.icon_new = os.path.join(consts.dirCurrentTheme, 'new.png')
+    consts.icon_open = os.path.join(consts.dirCurrentTheme, 'open.png')
+    consts.icon_options = os.path.join(consts.dirCurrentTheme, 'options.png')
+    consts.icon_package = os.path.join(consts.dirCurrentTheme, 'package.png')
+    consts.icon_plugin = os.path.join(consts.dirCurrentTheme, 'plugin.png')
+    consts.icon_plugin_add = os.path.join(consts.dirCurrentTheme, 'plugin_add.png')
+    consts.icon_plugin_disable = os.path.join(consts.dirCurrentTheme, 'plugin_disabled.png')
+    consts.icon_project_details = os.path.join(consts.dirCurrentTheme, 'project_details.png')
+    consts.icon_quit = os.path.join(consts.dirCurrentTheme, 'quit.png')
+    consts.icon_refresh = os.path.join(consts.dirCurrentTheme, 'refresh.png')
+    consts.icon_sources = os.path.join(consts.dirCurrentTheme, 'sources.png')
+    consts.icon_translate = os.path.join(consts.dirCurrentTheme, 'translate.png')
+    consts.icon_update = os.path.join(consts.dirCurrentTheme, 'update.png')
+    consts.icon_updates = os.path.join(consts.dirCurrentTheme, 'get_updates.png')
+    consts.icon_uptodate = os.path.join(consts.dirCurrentTheme, 'uptodate.png')

=== added file 'lib/consts.py'
--- lib/consts.py	1970-01-01 00:00:00 +0000
+++ lib/consts.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,145 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import os, os.path
+from gettext import gettext as _
+
+# Strings
+appName      = 'Keryx'
+appVersion   = '0.92.4'
+appNameShort = 'keryx'
+appFileExt   = '.keryx'
+appComments  = _('Bringing Updates Home.')
+filterDesc = _('Keryx Project Files') + ' | (*' + appFileExt + ')'
+
+authors = 'Chris Oliver\nBuran Ayuthia\nmac9416'
+email = 'excid3@xxxxxxxxx'
+artists = 'Chris Oliver'
+docwriters = 'Chris Oliver'
+translators = ''
+copyright = '(C) 2008-2009 Chris Oliver'
+description = appName + _(' is a package manager for computers without internet.')
+license = appName + _(""" is free software; you can redistribute it and/or 
+modify it under the terms of the GNU General Public License as published by the 
+Free Software Foundation; either version 2 of the License, or (at your option) 
+any later version.
+
+Keryx is distributed in the hope that it will be useful, but WITHOUT ANY 
+WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A 
+PARTICULAR PURPOSE. See the GNU General Public License for more details. You 
+should have received a copy of the GNU General Public License along with Keryx; 
+if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 
+330, Boston, MA  02111-1307  USA""")
+
+welcome_message = _('Welcome to ') + appName
+
+parameters="""
+Command line parameters:
+-h or --help                            Displays this message
+-v or --version                         Displays Keryx version number
+--create <project name> <plugin name>   Creates a new project in the default 
+                                          directory with name of <project name>
+                                          and type project <plugin name>
+--config <file>                         Uses <file> to as configuration file\n"""
+
+# Proxy
+proxy_enabled = False
+http_proxy = {}
+proxy_username = ''
+proxy_password = ''
+
+# URLs
+urlBug = 'https://bugs.launchpad.net/keryx'
+urlDonate = 'http://keryxproject.org/donate'
+urlHelp = 'http://keryxproject.org/forum'
+urlHomepage = 'http://keryxproject.org'
+urlTranslate = 'https://translations.launchpad.net/keryx'
+
+columns = [(_("S"), 50), (_("Package Name"), 200), (_("Installed Version"), 200), (_("Latest Version"), 200), (_("Description"), 200)]
+
+# Directories
+LocalePath = 'locale'
+LogPath = 'logs'
+#PackagesPath = 'packages'
+PixmapsPath = 'pixmaps'
+PluginsPath = 'plugins'
+ProjectsPath = 'projects'
+ThemesPath = PixmapsPath + '/themes'
+ThemeDefaultPath = ThemesPath + '/default'
+CurrentThemePath = ThemeDefaultPath
+
+dirLocale = os.path.abspath(os.path.join(os.getcwd(), LocalePath))
+dirLog = os.path.abspath(os.path.join(os.getcwd(), LogPath))
+#dirPackages = os.path.abspath(os.path.join(os.getcwd(), PackagesPath))
+dirPixmaps = os.path.abspath(os.path.join(os.getcwd(), PixmapsPath))
+dirPlugins = os.path.abspath(os.path.join(os.getcwd(), PluginsPath))
+dirProjects = os.path.abspath(os.path.join(os.getcwd(), ProjectsPath))
+dirThemes = os.path.abspath(os.path.join(os.getcwd(), ThemesPath))
+dirThemeDefault = os.path.abspath(os.path.join(os.getcwd(), ThemeDefaultPath))
+dirCurrentTheme = os.path.abspath(os.path.join(os.getcwd(), CurrentThemePath))
+
+# Files
+configFilename = appNameShort + '.conf'
+file_config = os.path.join(os.getcwd(), configFilename)
+fileLog   = os.path.join(dirLog, 'log')
+
+# Filetypes
+wildcard = '%s (*.keryx)|*.keryx|' \
+           '%s (*.*)|*.*' % (_("Keryx project"), _("All files"))
+wildcard_plugin = '%s (*.py)|*.py|' \
+                  '%s (*.*)|*.*' % (_("Python File"), _("All files"))
+
+# Logo
+fileIco = os.path.join(dirPixmaps,'keryx.ico')
+fileLogo = os.path.join(dirPixmaps,'keryx.png')
+
+# Load theme images
+icon_about = os.path.join(dirCurrentTheme, 'about.png')
+icon_arrow_down = os.path.join(dirCurrentTheme, 'arrow_down.png')
+icon_arrow_up = os.path.join(dirCurrentTheme, 'arrow_up.png')
+icon_bug_report = os.path.join(dirCurrentTheme, 'bug.png')
+icon_close = os.path.join(dirCurrentTheme, 'close.png')
+icon_donate = os.path.join(dirCurrentTheme, 'donate.png')
+icon_download = os.path.join(dirCurrentTheme, 'download.png')
+#icon_download_package = os.path.join(dirCurrentTheme, 'download_package.png')
+icon_downloaded = os.path.join(dirCurrentTheme, 'downloaded.png')
+icon_error = os.path.join(dirCurrentTheme, 'error.png')
+icon_find = os.path.join(dirCurrentTheme, 'find.png')
+icon_help = os.path.join(dirCurrentTheme, 'help.png')
+icon_home = os.path.join(dirCurrentTheme, 'home.png')
+icon_install = os.path.join(dirCurrentTheme, 'install.png')
+icon_layout = os.path.join(dirCurrentTheme, 'layout.png')
+icon_new = os.path.join(dirCurrentTheme, 'new.png')
+icon_open = os.path.join(dirCurrentTheme, 'open.png')
+icon_options = os.path.join(dirCurrentTheme, 'options.png')
+icon_package = os.path.join(dirCurrentTheme, 'package.png')
+icon_plugin = os.path.join(dirCurrentTheme, 'plugin.png')
+icon_plugin_add = os.path.join(dirCurrentTheme, 'plugin_add.png')
+icon_plugin_disable = os.path.join(dirCurrentTheme, 'plugin_disabled.png')
+icon_project_details = os.path.join(dirCurrentTheme, 'project_details.png')
+icon_quit = os.path.join(dirCurrentTheme, 'quit.png')
+icon_refresh = os.path.join(dirCurrentTheme, 'refresh.png')
+icon_sources = os.path.join(dirCurrentTheme, 'sources.png')
+icon_translate = os.path.join(dirCurrentTheme, 'translate.png')
+icon_update = os.path.join(dirCurrentTheme, 'update.png')
+icon_updates = os.path.join(dirCurrentTheme, 'get_updates.png')
+icon_uptodate = os.path.join(dirCurrentTheme, 'uptodate.png')
+
+#color_error = wx.Color(255,118,106)
+#color_update = "light blue"
+#color_uptodate = wx.Color(150, 235, 140)

=== added file 'lib/log.py'
--- lib/log.py	1970-01-01 00:00:00 +0000
+++ lib/log.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,47 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import consts, logging, os
+from logging.handlers import RotatingFileHandler
+
+# Make sure the directory existsv
+if not os.path.exists(consts.dirLog): os.mkdir(consts.dirLog)
+
+try:
+    __logHandler = RotatingFileHandler(consts.fileLog, maxBytes=0, backupCount=2)
+    __logHandler.doRollover()
+    __logHandler.setFormatter(logging.Formatter('[%(asctime)s] %(levelname)-7s %(message)s', datefmt='%y-%m-%d %H:%M:%S'))
+
+    logger = logging.getLogger(consts.appNameShort)
+    logger.setLevel(logging.INFO)
+    logger.addHandler(__logHandler)
+except:
+    print 'Unable to start Keryx'
+    print 'Make sure no other instances of Keryx are still running.'
+    import sys
+    sys.exit(1)
+
+def info(status):
+    """ Prints status to log file and to console """
+    logger.info(status)
+    print status
+
+def error(status):
+    """ Prints error to log file and to console """
+    logger.error(status)
+    print status

=== added file 'lib/plugins.py'
--- lib/plugins.py	1970-01-01 00:00:00 +0000
+++ lib/plugins.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,84 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import consts, log, os.path, sys, re
+
+OSPluginList = []
+InterfacePluginList = []
+app = None
+fail = False
+
+class pluginBase(object):
+    """ Used to make sure plugins have necessary functions """
+    def __init__(self):                pass
+    def IsOS(self):                    pass
+    def cleanup(self):                 pass
+
+    # Interface plugins
+    def getWidgets(self, instance):    self.app = instance
+
+    # OS Plugins
+    def createProject(self):           pass
+    def loadProject(self):             pass
+    def loadLocalPackageList(self):    pass
+    def loadInternetPackageList(self): pass
+    def getDependencies(self):         pass
+    def getSources(self):              pass
+    def installCache(self):            pass
+    def installRepo(self):             pass
+
+
+def load(dir, instance, load_interface_plugins=True):
+    """ Enumerates a list of plugins in a directory """
+    app = instance
+
+    # Make sure dir exists
+    if not os.path.isdir(dir):
+        log.info(_('Cannot find ') + consts.dirPlugins + _(', exiting.'))
+        return
+
+    # Try to load each file in plugins dir
+    sys.path.insert(0, dir)
+    for file in os.listdir(dir):
+        if file.endswith('.py'):
+            status = initialize(file)
+            if status != None: # Plugin loaded correctly
+                status[1].getWidgets(instance) # Give all interface plugins widget tree
+                # FIXME: Give plugins that have the attribute set only
+                if status[2] == 'OS':          OSPluginList.append(status)
+                elif status[2] == 'Interface' and load_interface_plugins:
+                    #status[1].getWidgets(instance) # Give all interface plugins widget tree
+                    InterfacePluginList.append(status)
+
+    if fail: log.info(_('Plugin(s) have failed to load. This may be due to not having python-wxversion installed.'))
+
+def initialize(file):
+    """ Initializes plugin given filename and returns its instance """
+    try:
+        plugin = __import__(re.sub('\.pyc?$', '', file))
+        if not hasattr(plugin, 'PLUGIN_NAME'): return
+        name = getattr(plugin, 'PLUGIN_NAME')
+        instance = getattr(plugin, name)()
+        ptype = getattr(plugin, 'PLUGIN_TYPE')
+        version = getattr(plugin, 'PLUGIN_VERSION')
+        log.info(_('Plugin loaded: ') + file[:-3] + ' v' + version)
+        return [name, instance, ptype, version]
+    except:
+        log.error(file + _(' failed to load.'))
+        fail = True # a plugin failed to load
+        return

=== added file 'lib/project.py'
--- lib/project.py	1970-01-01 00:00:00 +0000
+++ lib/project.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,116 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import os, os.path, consts, log, plugins
+from threading import Thread
+
+# Make sure the directory exists
+if not os.path.exists(consts.dirProjects): os.mkdir(consts.dirProjects)
+
+# List of currently opened projects
+projects = []
+
+class Project(object):
+    """
+    Stores project information and common tasks
+    """
+    def __init__(self, name="", dir="", plugin="", comp="", os="", ver="", arch="", kernel=""):
+        self.name = name
+        self.dir = dir
+        self.plugin = plugin
+        self.computername = comp
+        self.os = os
+        self.version = ver
+        self.architecture = arch
+        self.kernel = kernel
+        self.packages = {}
+
+    def GetData(self):
+        return [self.name, self.dir, self.os, self.version, self.architecture, self.kernel]
+
+    def SetData(self, name="", dir="", plugin="", comp="", os="", ver="", arch="", kernel=""):
+        self.name = name
+        self.dir = dir
+        self.plugin = plugin
+        self.computername = comp
+        self.os = os
+        self.version = ver
+        self.architecture = arch
+        self.kernel = kernel
+
+
+
+    """ Project manipulation functions """
+
+    def CreateKeryx(self, name, pluginName, plugin):
+        """ Creates a project """
+        try:
+        #if 1:
+            dirProj = os.path.join(consts.dirProjects, name)
+            if os.path.exists(dirProj): return False, '' # False, '' means that files were changed
+            filename = os.path.join(dirProj, name) + consts.appFileExt
+            os.mkdir(dirProj)
+            projFile = open(filename, 'wb')
+            projFile.write(name + '\n' + pluginName)
+            projFile.close()
+            log.info('Created project: ' + name)
+            plugin.createProject(name) #Create plugin information
+            return True, filename
+        except:
+            return False, name
+
+    def OpenKeryx(self, name):
+        """ Opens a project """
+        try:
+            infile = open(name, 'rb')
+            data = infile.read()
+            infile.close()
+            data = data.split('\n')
+
+            self.name = data[0]
+            self.dir = os.path.dirname(name)
+            self.plugin_name = data[1]
+
+            #Initialize plugin
+            for item in plugins.OSPluginList:
+                if item[0] == data[1]:
+                    self.plugin = item[1] # Set plugin to correct one
+                    info = self.plugin.loadProject(self.dir)
+
+                    self.computername = info[0]
+                    self.os = info[1]
+                    self.version = info[2]
+                    self.architecture = info[3]
+                    self.kernel = info[4]
+
+                    return True
+        except: return False
+
+    def getDependencies(self, package):
+        """ Gets dependencies for package """
+        return self.plugin.getDependencies(os.path.join(self.dir, 'packages'), self.packages, package)
+
+    def getUrls(self):
+        return self.plugin.loadInternetPackageList(self.dir, self.architecture)
+
+    def loadLocal(self, jobID, abortEvent):
+        self.packages = self.plugin.loadLocalPackageList(self.dir, self.architecture)
+        return True
+
+    def getSources(self):
+        return self.plugin.getSources(self.dir)

=== added directory 'lib/wxkeryx'
=== added file 'lib/wxkeryx/__init__.py'
--- lib/wxkeryx/__init__.py	1970-01-01 00:00:00 +0000
+++ lib/wxkeryx/__init__.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,48 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import wx
+from lib import consts, log, project
+from main import MainApp
+from startDialog import startDialog
+
+class wxKeryx(wx.App):
+    def OnInit(self):
+        log.info(_('wxWidgets interface loaded'))
+        wx.InitAllImageHandlers()
+        main = MainApp(None, -1, consts.appName + " v" + consts.appVersion)
+        self.SetTopWindow(main)
+        main.Show()
+        main.SetFocus()
+        
+        start = startDialog(None, -1, '')
+        success = start.ShowModal()
+        start.Destroy()
+        
+        if success == wx.ID_CANCEL: main.Close()
+        else:
+            main.Refresh(project.projects[len(project.projects) - 1].GetData())
+            self.MainLoop()
+        return 1
+
+# end of class wxKeryx
+
+def Start():
+#    import gettext
+#    gettext.install(consts.appNameShort)
+    keryx = wxKeryx(0)

=== added file 'lib/wxkeryx/delayedresult.py'
--- lib/wxkeryx/delayedresult.py	1970-01-01 00:00:00 +0000
+++ lib/wxkeryx/delayedresult.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,152 @@
+import lib, os.path, wx
+import wx.lib.delayedresult as delayedresult
+from lib import consts, log
+
+class thread(wx.Frame):
+    """This demos simplistic use of delayedresult module."""
+    def __init__(self, parent, func, endfunc):
+        wx.Frame.__init__(self, None, title=_("Loading..."))
+        self.parent = parent
+        self.function = func
+        self.endfunction = endfunc
+
+        self.SetIcon(wx.Icon(consts.fileIco, wx.BITMAP_TYPE_ICO))
+        panel = wx.Panel(self)
+        loading = wx.StaticText(panel, -1, _("This may take a while. Please be patient."))
+        self.gauge = wx.Gauge(panel)
+        #cancelBtn  = wx.Button(panel, -1, "Cancel")
+        
+        #self.cur = wx.StaticText(panel, -1, "Current Transfer:")
+        #self.cur.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.BOLD, 0, ""))
+        #self.current = wx.StaticText(panel)
+        #self.download_gauge = wx.Gauge(panel)
+        #self.status = wx.TextCtrl(panel, style=wx.TE_MULTILINE|wx.TE_READONLY)
+        
+        #status = wx.BoxSizer()
+        #status.Add(self.cur, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5)
+        #status.Add(self.current, 1, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5)
+
+        main = wx.BoxSizer(wx.VERTICAL)
+        main.Add(loading, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALL, 5)
+        main.Add(self.gauge, 0, wx.EXPAND|wx.ALL, 5)
+        #main.Add(status)
+        #main.Add(self.download_gauge, 0, wx.EXPAND|wx.ALL, 5)
+        #main.Add(self.status, 1, wx.EXPAND|wx.ALL, 5)
+        #main.Add(cancelBtn, 0, wx.ALIGN_RIGHT|wx.ALL, 5)
+
+        panel.SetSizer(main)
+        self.SetSize(wx.Size(300,100))
+        self.Center()
+        self.Show()
+
+        self.jobID = 0
+        self.abortEvent = delayedresult.AbortEvent()
+        self.Bind(wx.EVT_CLOSE, self.OnClose)
+        #self.Bind(wx.EVT_BUTTON, self.handleAbort, cancelBtn)
+        self.Bind(wx.EVT_TIMER, self.TimerHandler)
+
+        self.timer = wx.Timer(self)
+        self.timer.Start(100)
+        
+        self.parent.Enable(False)
+        self.handleGet(None)
+
+    def TimerHandler(self, event): self.gauge.Pulse()
+        
+    def OnClose(self, event):
+        """Only needed because in demo, closing the window does not kill the 
+        app, so worker thread continues and sends result to dead frame; normally
+        your app would exit so this would not happen."""
+        #if self.buttonAbort.IsEnabled():
+            #self.log( "Exiting: Aborting job %s" % self.jobID )
+            #self.handleAbort(None)
+        self.Show()
+            
+    def handleGet(self, event): 
+        """Compute result in separate thread, doesn't affect GUI response."""
+        #self.buttonGet.Enable(False)
+        #self.buttonAbort.Enable(True)
+        self.abortEvent.clear()
+        self.jobID += 1
+        
+        #log.info( "Starting job %s in producer thread: GUI remains responsive"
+        #          % self.jobID )
+        delayedresult.startWorker(self._resultConsumer, self.function, 
+                                  wargs=(self.jobID,self.abortEvent), jobID=self.jobID)
+
+                                                
+    def _resultProducer(self, jobID, abortEvent):
+        """Downloads the files in self.files"""
+        
+        msg = "Downloading %i file(s)\n" % len(self.files)
+        wx.CallAfter(self.LogMessage, msg)
+
+        success = True
+        for data in self.files:
+            if abortEvent(): return [1, self.files]
+
+            url = data[0]
+            file = data[1]
+            end = url.split('/')
+            protocol = end[0] + '//'
+            site = end[2]
+            end = end[len(end) - 1]
+
+            msg = "%s%s    %s" % (protocol, site, end)
+            wx.CallAfter(self.SetFile, msg)
+
+            try: # Attempt to download the file
+                urllib.urlretrieve(url, file, self.progress)
+                #TODO: Generate md5hashes for these files
+                
+                msg = "Success: %s\nSaved to: %s\n" % (url, file)
+                wx.CallAfter(self.LogMessage, msg)
+    
+            except IOError, e: # Failed downloading
+                success = False
+                msg = "Failed: %s\nReason: %s\n" % (url, str(e))
+                wx.CallAfter(self.LogMessage, msg)
+
+        if success == True: 
+            wx.CallAfter(self.DisplayMessage,_("All downloads have been completed successfully."), _("Download Complete"))
+            result = [0,self.files]
+        else:
+            wx.CallAfter(self.DisplayMessage, _("Some downloads failed to complete.") + "\n" +_("Please check") + " " + os.path.join(consts.dirLog, "log") + " " + _("for more details."), _("Download Failed"))
+            result = [1,self.files]
+        return result
+
+    def progress(self, blocks, size, total):
+        if blocks*size > total: fraction = float(total)/float(total)
+        else:                   fraction = float(blocks*size)/float(total)
+        
+        wx.CallAfter(self.SetGauge, int(round(fraction*100,2)))
+
+    def LogMessage(self, msg):
+        log.info(msg)
+        self.status.AppendText(msg)
+    def DisplayMessage(self, msg, caption): wx.MessageBox(msg, caption)
+    def SetGauge(self, val): self.download_gauge.SetValue(val)
+    def SetFile(self, val): self.current.SetLabel(val)
+
+    def handleAbort(self, event): 
+        """Abort the result computation."""
+        log.info( "Aborting result for job %s" % self.jobID )
+        #self.buttonGet.Enable(True)
+        #self.buttonAbort.Enable(False)
+        self.abortEvent.set()
+
+        
+    def _resultConsumer(self, delayedResult):
+        jobID = delayedResult.getJobID()
+        assert jobID == self.jobID
+        try:
+            result = delayedResult.get()
+        except Exception, exc:
+            log.info( "Result for job %s raised exception: %s" % (jobID, exc) )
+            return
+        
+        # output result
+        #log.info( "Got result for job %s: %s" % (jobID, result) )
+        self.parent.Enable()
+        self.Destroy()
+        if self.endfunction: self.endfunction()

=== added file 'lib/wxkeryx/download.py'
--- lib/wxkeryx/download.py	1970-01-01 00:00:00 +0000
+++ lib/wxkeryx/download.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,259 @@
+import lib, os.path, urllib, wx, hashlib
+import wx.lib.delayedresult as delayedresult
+from lib import consts, log
+
+class download(wx.Frame):
+    """This demos simplistic use of delayedresult module."""
+    def __init__(self, parent, endfunc, files, extract=False, overwrite=False):
+        wx.Frame.__init__(self, None, title=_("Downloading..."))
+        self.parent = parent
+        self.files = files
+        self.function = endfunc
+        self.extract = extract
+        self.overwrite = overwrite
+        self.retries = 1
+
+        #TODO: Add overwrite function
+
+        self.SetIcon(wx.Icon(consts.fileIco, wx.BITMAP_TYPE_ICO))
+        panel = wx.Panel(self)
+        loading = wx.StaticText(panel, -1, _("This may take a while. Please be patient."))
+        self.gauge = wx.Gauge(panel)
+        #cancelBtn  = wx.Button(panel, -1, "Cancel")
+
+        self.cur = wx.StaticText(panel, -1, _("Current Transfer:"))
+        self.cur.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.BOLD, 0, ""))
+        self.current = wx.StaticText(panel, -1, "\n")
+        self.download_gauge = wx.Gauge(panel)
+        self.status = wx.TextCtrl(panel, style=wx.TE_MULTILINE|wx.TE_READONLY)
+
+        status = wx.BoxSizer()
+        status.Add(self.cur, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5)
+        status.Add(self.current, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5)
+
+        main = wx.BoxSizer(wx.VERTICAL)
+        main.Add(loading, 0, wx.ALIGN_CENTER_HORIZONTAL|wx.ALL, 5)
+        main.Add(self.gauge, 0, wx.EXPAND|wx.ALL, 5)
+        main.Add(status)
+        main.Add(self.download_gauge, 0, wx.EXPAND|wx.ALL, 5)
+        main.Add(self.status, 1, wx.EXPAND|wx.ALL, 5)
+        #main.Add(cancelBtn, 0, wx.ALIGN_RIGHT|wx.ALL, 5)
+
+        panel.SetSizer(main)
+        self.Center()
+        self.Show()
+
+        self.jobID = 0
+        self.abortEvent = delayedresult.AbortEvent()
+        self.Bind(wx.EVT_CLOSE, self.OnClose)
+        #self.Bind(wx.EVT_BUTTON, self.handleAbort, cancelBtn)
+        self.Bind(wx.EVT_TIMER, self.TimerHandler)
+
+        self.timer = wx.Timer(self)
+        self.timer.Start(100)
+
+        self.parent.Enable(False)
+        self.handleGet(None)
+
+    def TimerHandler(self, event): self.gauge.Pulse()
+
+    def OnClose(self, event):
+        """Only needed because in demo, closing the window does not kill the
+        app, so worker thread continues and sends result to dead frame; normally
+        your app would exit so this would not happen."""
+        #if self.buttonAbort.IsEnabled():
+            #self.log( "Exiting: Aborting job %s" % self.jobID )
+            #self.handleAbort(None)
+        self.Show()
+
+    def handleGet(self, event):
+        """Compute result in separate thread, doesn't affect GUI response."""
+        #self.buttonGet.Enable(False)
+        #self.buttonAbort.Enable(True)
+        self.abortEvent.clear()
+        self.jobID += 1
+
+        log.info( "Starting job %s in producer thread: GUI remains responsive"
+                  % self.jobID )
+        delayedresult.startWorker(self._resultConsumer, self._resultProducer,
+                                  wargs=(self.jobID,self.abortEvent), jobID=self.jobID)
+
+
+    def _resultProducer(self, jobID, abortEvent):
+        """Downloads the files in self.files"""
+        self.numfiles = len(self.files)
+        msg = _("Downloading ") + str(self.numfiles) + " " + _("file(s)") + "\n"
+        wx.CallAfter(self.LogMessage, msg)
+
+        if consts.proxy_enabled:
+            if consts.http_proxy['http'][0:7] != 'http://':
+                proxy = {'http://':consts.http_proxy['http']}
+            else:
+                proxy = consts.http_proxy
+            downloader = Downloader(proxy)
+        else:
+            downloader = Downloader()
+
+        failed = self.files[:]
+        self.numfile = 0
+        for data in self.files:
+            if abortEvent(): return [1, failed]
+            url = data[0]
+            filepath = data[1]
+            end = url.split('/')
+            protocol = end[0] + '//'
+            site = end[2]
+            end = end[len(end) - 1]
+            if len(data) <= 2:
+                checksum = {}
+            else:
+                checksum = data[2]
+
+            msg = _("Starting") + " " + end
+            wx.CallAfter(self.SetFile, msg)
+            #TODO: Change this to file progress (move to self.progress)
+
+            self.curfile = end
+            self.numfile += 1
+            if os.path.exists(filepath):
+                if not self.overwrite:
+                    if self._verify(filepath, checksum) >= 1:
+                        msg = _("Skipped: ") + end + "\n" + _("Reason: ") + _("File already exists.") + "\n"
+                        wx.CallAfter(self.LogMessage, msg)
+                        failed.remove(data)
+                        continue
+                    else:
+                        msg = _("Deleted: ") + filepath + "\n" + _("Reason: ") + _("Existing file failed checksum verify.") + "\n"
+                        wx.CallAfter(self.LogMessage, msg)
+                os.remove(filepath)
+            retries = 0
+            success = False
+            while retries <= self.retries:
+
+                try: # Attempt to download the file
+                    msg = _("Downloading: ") + url + "\n"
+                    if retries != 0: msg = _("Retrying: ")+"[%i/%i] " % (retries, self.retries) + url + "\n"
+                    wx.CallAfter(self.LogMessage, msg)
+
+                    downloader.retrieve(url, filepath, self.progress)
+                    
+                    if self._verify(filepath, checksum) == 0:
+                        msg = _("Failed verify: ") + filepath + "\n"
+                        wx.CallAfter(self.LogMessage, msg)
+                        os.remove(filepath)
+                        retries += 1
+                        continue
+
+                    success = True
+                    failed.remove(data)
+                    msg = _("Success: ") + filepath + "\n"
+                    wx.CallAfter(self.LogMessage, msg)
+
+                    if self.extract:
+                        msg = _("Extracting") + " " + end
+                        wx.CallAfter(self.SetFile, msg)
+                        try:
+                            import gzip
+                            infile = gzip.open(filepath, 'rb')
+                            outfile = open(filepath[:-3], 'wb')
+                            outfile.write(infile.read())
+                            outfile.close()
+                            infile.close()
+                            os.remove(filepath)
+                        except:  # Failed to extract
+                            msg = _("Unable to extract: ") + filepath
+                            wx.CallAfter(self.LogMessage, msg)
+                    break
+
+                except IOError, e: # Failed downloading
+                    msg = _("Failed: ") + url + "\n" + _("Reason: ") + str(e) + "\n"
+                    wx.CallAfter(self.LogMessage, msg)
+                    retries += 1
+
+
+        msg = _("Downloaded: ") + str(len(self.files) - len(failed)) + ", " + _("Failed: ") + str(len(failed)) + "\n"
+        wx.CallAfter(self.LogMessage, msg)
+        if failed == []:
+            wx.CallAfter(self.DisplayMessage,_("All downloads have been completed successfully."), _("Download Complete"))
+            result = [0,failed]
+        else:
+            wx.CallAfter(self.DisplayMessage, _("Some downloads failed to complete.") + "\n" +_("Please check") + " " + os.path.join(consts.dirLog, "log") + " " + _("for more details."), _("Download Failed"))
+            result = [1,failed]
+        return result
+
+    def _verify(self, filename, checksum, cspriority=['SHA256','SHA1','MD5sum']):
+        """ Does a hash check on 'filename' as per hashes in 'checksum' dict. Currently only supports sha256, sha1, md5."""
+        if cspriority != []:
+            checks = [x for x in cspriority if checksum.has_key(x)]
+            if checks == []: return 2
+        else:
+            checks = checksum.keys()
+        if checks == []: return 2
+
+        if checks[0] == 'SHA256':
+            check = hashlib.sha256()
+        elif checks[0] == 'SHA1':
+            check = hashlib.sha1()
+        elif checks[0] == 'MD5sum':
+            check = hashlib.md5()
+        else:
+            return 2
+        
+        try:
+            fd = open(filename, 'rb')
+            data = fd.read(1024*64)
+            while data:
+                check.update(data)
+                data=fd.read(1024*64)
+            fd.close()
+            if check.hexdigest() == checksum[checks[0]]:
+                return 1
+            return 0
+        except:
+            return 2
+
+    def progress(self, blocks, size, total):
+        if blocks*size > total: fraction = float(total)/float(total)
+        else:                   fraction = float(blocks*size)/float(total)
+
+        wx.CallAfter(self.SetGauge, int(round(fraction*100,2)))
+        msg = self.curfile + "\n" + str(int(round(fraction*100,2))) + " % of " + lib.convert_file_size(total) + " - File "+ str(self.numfile) + "/" + str(self.numfiles)
+        wx.CallAfter(self.SetFile, msg)
+
+    def LogMessage(self, msg):
+        log.info(msg[:-1])
+        self.status.AppendText(msg)
+    def DisplayMessage(self, msg, caption): wx.MessageBox(msg, caption)
+    def SetGauge(self, val): self.download_gauge.SetValue(val)
+    def SetFile(self, val): self.current.SetLabel(val)
+
+    def handleAbort(self, event):
+        """Abort the result computation."""
+        log.info( "Aborting result for job %s" % self.jobID )
+        #self.buttonGet.Enable(True)
+        #self.buttonAbort.Enable(False)
+        self.abortEvent.set()
+
+
+    def _resultConsumer(self, delayedResult):
+        jobID = delayedResult.getJobID()
+        assert jobID == self.jobID
+        try:
+            result = delayedResult.get()
+        except Exception, exc:
+            log.info( "Result for job %s raised exception: %s" % (jobID, exc) )
+            return
+
+        # output result
+        #log.info( "Got result for job %s: %s" % (jobID, result) )
+        self.parent.Enable()
+        self.Destroy()
+        if self.function: self.function()
+
+class Downloader(urllib.FancyURLopener):
+    def __init__(self, proxy={}):
+        urllib.FancyURLopener.__init__(self, proxy)
+
+    def prompt_user_passwd(self, host='', realm=''):
+        return (consts.proxy_username, consts.proxy_password)
+

=== added file 'lib/wxkeryx/editor.py'
--- lib/wxkeryx/editor.py	1970-01-01 00:00:00 +0000
+++ lib/wxkeryx/editor.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,35 @@
+import platform, wx
+from lib import consts, project
+
+class FileEditor(wx.Dialog):
+    def __init__(self, window_name, filename):
+        wx.Dialog.__init__(self, None, -1, window_name)#, size=(300, 300))
+        self.SetIcon(wx.Icon(consts.fileIco, wx.BITMAP_TYPE_ICO))
+        sizer = wx.BoxSizer(wx.VERTICAL)
+        self.txt = wx.TextCtrl(self, style=wx.TE_MULTILINE|wx.TE_RICH2)
+        self.txt.LoadFile(filename)
+        sizer.Add(self.txt, 1, wx.EXPAND|wx.ALL, 3)
+        
+        # Add buttons
+        btnsizer = wx.StdDialogButtonSizer()
+        btnSave = wx.Button(self, wx.ID_OK, 'Save')
+        btnSave.SetDefault()
+        btnsizer.AddButton(btnSave) 
+        btnCancel = wx.Button(self, wx.ID_CANCEL)
+        btnsizer.AddButton(btnCancel)
+        btnsizer.Realize()
+        sizer.Add(btnsizer, 0, wx.ALIGN_BOTTOM|wx.ALIGN_RIGHT|wx.ALL, 5)
+
+        self.SetSizer(sizer)
+        
+        if platform.system() != 'Windows':
+            self.Bind(wx.EVT_TEXT, self.comment, self.txt)
+            self.comment(None)
+
+    def comment(self, event):
+        location = 0
+        for line in self.txt.GetValue().split('\n'):
+            if line.find('#') != -1: # line contains a comment
+                self.txt.SetStyle(location + line.index('#'), len(line)+location, wx.TextAttr("RED"))
+            location += len(line) + 1
+        
\ No newline at end of file

=== added file 'lib/wxkeryx/main.py'
--- lib/wxkeryx/main.py	1970-01-01 00:00:00 +0000
+++ lib/wxkeryx/main.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,577 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import os.path, lib, sys, wx
+import wx.lib.buttons as buttons
+from lib import consts, log, plugins, project
+from startDialog import startDialog
+from misc import detailsTab, ProportionalSplitter, VirtualList
+from options import optionDialog
+from delayedresult import thread
+from download import download
+from editor import FileEditor
+
+class MainApp(wx.Frame):
+    def __init__(self, *args, **kwds):
+        kwds["style"] = wx.DEFAULT_FRAME_STYLE
+        wx.Frame.__init__(self, *args, **kwds)
+        self.splitter = ProportionalSplitter(self)#, style=wx.SP_3D|wx.SP_BORDER)
+        self.panel = wx.Panel(self.splitter)
+        self.notebook = wx.Notebook(self.panel, -1, style=wx.NB_BOTTOM)
+        self.project_notebook_pane = wx.Panel(self.notebook, -1, style=wx.TAB_TRAVERSAL)
+        self.SetIcon(wx.Icon(consts.fileIco, wx.BITMAP_TYPE_ICO))
+        self.statusbar = self.CreateStatusBar(1, 0)
+
+        # Side Buttons
+        self.buttonPanel = wx.Panel(self)
+        self.downloadButton = buttons.GenBitmapTextButton(self.buttonPanel, -1, wx.Bitmap(consts.icon_download), _("Download"))#, size=(95, 25))
+        self.updatesButton = buttons.GenBitmapTextButton(self.buttonPanel, -1, wx.Bitmap(consts.icon_updates), _("Get Updates"))#, size=(95, 25))
+        self.refreshButton = buttons.GenBitmapTextButton(self.buttonPanel, -1, wx.Bitmap(consts.icon_refresh), _("Refresh"))#, size=(95, 25))
+        #self.updateStatusButton = buttons.GenBitmapTextButton(self.buttonPanel, -1, wx.Bitmap(consts.icon_refresh), _("Update Status"))#, size=(95, 25))
+
+        self.notebook_il = wx.ImageList(16, 16)
+        self.notebook_il.Add(wx.Bitmap(consts.icon_project_details))
+        self.notebook.SetImageList(self.notebook_il)
+
+        self.projectDetails = wx.TextCtrl(self.project_notebook_pane, style = wx.TE_MULTILINE | wx.TE_RICH |wx.TE_READONLY)
+        self.details = detailsTab(self.notebook)
+
+        # Create list view
+        self.list = VirtualList(self.splitter, self.details)
+
+        # Create Popup menu for self.list
+        self.__popup_menu()
+        self.__create_menu()
+        self.__set_properties()
+        self.__do_layout()
+        self.__bind_events()
+
+        plugins.load(consts.dirPlugins, self)
+        for name, instance, type, ver in plugins.InterfacePluginList: instance.start()
+
+        if len(plugins.OSPluginList) < 1:
+            wx.MessageBox(_("No OS plugins were loaded. Make sure you have OS plugins in ") +
+                          consts.dirPlugins + ". " + _("Check the log for more details."))
+            sys.exit(1)
+
+    def __popup_menu(self):
+        self.popupmenu = wx.Menu()
+        #FIXME: popup menu items cannot display bitmap properly?
+        item = self.popupmenu.Append(-1, _("Download"))
+        self.Bind(wx.EVT_MENU, self.OnDownload, item)
+        item = self.popupmenu.Append(-1, _("View Details"))
+        self.Bind(wx.EVT_MENU, self.OnDetails, item)
+        self.list.Bind(wx.EVT_CONTEXT_MENU, self.OnShowPopup)
+
+    def __create_menu(self):
+        # Menu Bar
+        self.menubar = wx.MenuBar()
+        self.fileFile = wx.Menu()
+        self.fileClose = wx.MenuItem(self.fileFile, wx.NewId(), _("&Close Project...\tCtrl+X"), _("Closes the current project"), wx.ITEM_NORMAL)
+        self.fileClose.SetBitmap(wx.Bitmap(consts.icon_close))
+        self.fileFile.AppendItem(self.fileClose)
+        self.fileFile.AppendSeparator()
+        self.fileQuit = wx.MenuItem(self.fileFile, wx.NewId(), _("&Quit\tCtrl+Q"), _("Quit this application"), wx.ITEM_NORMAL)
+        self.fileQuit.SetBitmap(wx.Bitmap(consts.icon_quit))
+        self.fileFile.AppendItem(self.fileQuit)
+        self.menubar.Append(self.fileFile, _("&File"))
+
+        tmp_menu = wx.Menu()
+        self.editOptions = wx.MenuItem(tmp_menu, wx.NewId(), _("&Options...\tCtrl+O"), _("Open options dialog"), wx.ITEM_NORMAL)
+        self.editOptions.SetBitmap(wx.Bitmap(consts.icon_options))
+        tmp_menu.AppendItem(self.editOptions)
+        self.menubar.Append(tmp_menu, _("&Edit"))
+
+        tmp_menu = wx.Menu()
+        self.projRefresh = wx.MenuItem(tmp_menu, wx.NewId(), _("&Refresh\tCtrl+R"), _("Refresh package list"), wx.ITEM_NORMAL)
+        self.projRefresh.SetBitmap(wx.Bitmap(consts.icon_refresh))
+        tmp_menu.AppendItem(self.projRefresh)
+        tmp_menu.AppendSeparator()
+        self.projUpdates = wx.MenuItem(tmp_menu, wx.NewId(), _("Get &Updates\tCtrl+U"), _("Grabs all packages that have updates"), wx.ITEM_NORMAL)
+        self.projUpdates.SetBitmap(wx.Bitmap(consts.icon_updates))
+        tmp_menu.AppendItem(self.projUpdates)
+        self.projDownload = wx.MenuItem(tmp_menu, wx.NewId(), _("&Download Package\tCtrl+D"), _("Downloads selected package"), wx.ITEM_NORMAL)
+        self.projDownload.SetBitmap(wx.Bitmap(consts.icon_download))
+        tmp_menu.AppendItem(self.projDownload)
+        self.projInstall = wx.MenuItem(tmp_menu, wx.NewId(), _("&Install Project..."), _("Helps you install packages onto Project Machine"), wx.ITEM_NORMAL)
+        self.projInstall.SetBitmap(wx.Bitmap(consts.icon_install))
+        tmp_menu.AppendItem(self.projInstall)
+        self.projUpdateStatus = wx.MenuItem(tmp_menu, wx.NewId(), _("&Update Status"), _("Regrabs the list of installed packages"), wx.ITEM_NORMAL)
+        self.projUpdateStatus.SetBitmap(wx.Bitmap(consts.icon_refresh))
+        tmp_menu.AppendItem(self.projUpdateStatus)
+        tmp_menu.AppendSeparator()
+        self.projDetails = wx.MenuItem(tmp_menu, wx.NewId(), _("&View Details\tCtrl+V"), _("Shows details of selected package"), wx.ITEM_NORMAL)
+        self.projDetails.SetBitmap(wx.Bitmap(consts.icon_package))
+        tmp_menu.AppendItem(self.projDetails)
+        tmp_menu.AppendSeparator()
+        self.projSources = wx.MenuItem(tmp_menu, wx.NewId(), _("&Edit Sources...\tCtrl+E"), _("Edit project sources"), wx.ITEM_NORMAL)
+        self.projSources.SetBitmap(wx.Bitmap(consts.icon_sources))
+        tmp_menu.AppendItem(self.projSources)
+
+        self.menubar.Append(tmp_menu, _("&Project"))
+
+        tmp_menu = wx.Menu()
+        self.helpHomepage = wx.MenuItem(tmp_menu, wx.NewId(), _("&Homepage"), _("Visit the website"), wx.ITEM_NORMAL)
+        self.helpHomepage.SetBitmap(wx.Bitmap(consts.icon_home))
+        tmp_menu.AppendItem(self.helpHomepage)
+        self.helpOnline = wx.MenuItem(tmp_menu, wx.NewId(), _("&Get Help Online"), _("Visit the forums"), wx.ITEM_NORMAL)
+        self.helpOnline.SetBitmap(wx.Bitmap(consts.icon_help))
+        tmp_menu.AppendItem(self.helpOnline)
+        self.helpTranslate = wx.MenuItem(tmp_menu, wx.NewId(), _("&Translate This Application"), _("Help translate to other languages"), wx.ITEM_NORMAL)
+        self.helpTranslate.SetBitmap(wx.Bitmap(consts.icon_translate))
+        tmp_menu.AppendItem(self.helpTranslate)
+        self.helpReport = wx.MenuItem(tmp_menu, wx.NewId(), _("R&eport A Problem"), _("Report a bug"), wx.ITEM_NORMAL)
+        self.helpReport.SetBitmap(wx.Bitmap(consts.icon_bug_report))
+        tmp_menu.AppendItem(self.helpReport)
+        tmp_menu.AppendSeparator()
+        self.helpDonate = wx.MenuItem(tmp_menu, wx.NewId(), _("&Donate"), _("Make a donation"), wx.ITEM_NORMAL)
+        self.helpDonate.SetBitmap(wx.Bitmap(consts.icon_donate))
+        tmp_menu.AppendItem(self.helpDonate)
+        tmp_menu.AppendSeparator()
+        self.helpAbout = wx.MenuItem(tmp_menu, wx.NewId(), _("&About..."), _("About " + consts.appName), wx.ITEM_NORMAL)
+        self.helpAbout.SetBitmap(wx.Bitmap(consts.icon_about))
+        tmp_menu.AppendItem(self.helpAbout)
+        self.menubar.Append(tmp_menu, _("&Help"))
+        self.SetMenuBar(self.menubar)
+        # Menu Bar end
+
+    def __bind_events(self):
+        self.Bind(wx.EVT_MENU, self.OnClose, self.fileClose)
+        self.Bind(wx.EVT_MENU, self.OnQuit, self.fileQuit)
+        self.Bind(wx.EVT_MENU, self.OnOptions, self.editOptions)
+        self.Bind(wx.EVT_MENU, self.OnHomepage, self.helpHomepage)
+        self.Bind(wx.EVT_MENU, self.OnHelpOnline, self.helpOnline)
+        self.Bind(wx.EVT_MENU, self.OnTranslate, self.helpTranslate)
+        self.Bind(wx.EVT_MENU, self.OnReport, self.helpReport)
+        self.Bind(wx.EVT_MENU, self.OnDonate, self.helpDonate)
+        self.Bind(wx.EVT_MENU, self.OnAbout, self.helpAbout)
+
+        self.Bind(wx.EVT_MENU, self.OnRefresh, self.projRefresh)
+        self.Bind(wx.EVT_MENU, self.OnUpdates, self.projUpdates)
+        self.Bind(wx.EVT_MENU, self.OnDownload, self.projDownload)
+        self.Bind(wx.EVT_MENU, self.OnInstall, self.projInstall)
+        self.Bind(wx.EVT_MENU, self.OnUpdateStatus, self.projUpdateStatus)
+        self.Bind(wx.EVT_MENU, self.OnDetails, self.projDetails)
+        self.Bind(wx.EVT_MENU, self.OnSources, self.projSources)
+
+        self.Bind(wx.EVT_BUTTON, self.OnDownload, self.downloadButton)
+        self.Bind(wx.EVT_BUTTON, self.OnRefresh, self.refreshButton)
+        #self.Bind(wx.EVT_BUTTON, self.OnUpdateStatus, self.updateStatusButton)
+        self.Bind(wx.EVT_BUTTON, self.OnUpdates, self.updatesButton)
+        self.Bind(wx.EVT_CLOSE, self.Closing)
+
+    def __set_properties(self):
+        self.SetSize((700, 500))
+        self.statusbar.SetStatusWidths([-1])
+        # statusbar fields
+        statusbar_fields = [_("Ready")]
+        for i in range(len(statusbar_fields)):
+            self.statusbar.SetStatusText(statusbar_fields[i], i)
+
+        attr = wx.TextAttr()
+        attr.SetTabs([400])
+        self.projectDetails.SetDefaultStyle(attr)
+
+    def __do_layout(self):
+        sizer = wx.BoxSizer(wx.VERTICAL)
+        sizer_bottom = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_buttons = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_buttons.Add(self.downloadButton, 0, wx.ALL, 3)
+        sizer_buttons.Add(self.updatesButton, 0, wx.ALL, 3)
+        sizer_buttons.Add(self.refreshButton, 0, wx.ALL, 3)
+        #sizer_buttons.Add(self.updateStatusButton, 0, wx.ALL, 3)
+        #sizer_bottom.Add(sizer_buttons, 0, wx.ALIGN_CENTER_VERTICAL, 0)
+        self.buttonPanel.SetSizer(sizer_buttons)
+
+        sizer_project = wx.BoxSizer(wx.VERTICAL)
+        sizer_project.Add(self.projectDetails, 1, wx.EXPAND, 0)
+        self.project_notebook_pane.SetSizer(sizer_project)
+        self.notebook.InsertPage(0, self.project_notebook_pane, _("Project Details"), False, 0)
+        sizer_bottom.Add(self.notebook, 1, wx.EXPAND, 0)
+        self.panel.SetSizer(sizer_bottom)
+        self.notebook.SetSelection(0)
+
+        self.splitter.SplitHorizontally(self.list, self.panel)
+        sizer.Add(self.buttonPanel, 0, wx.EXPAND, 0)
+        sizer.Add(self.splitter, 1, wx.EXPAND, 0)
+        self.SetSizer(sizer)
+        self.Layout()
+        self.Centre()
+
+    def OnShowPopup(self, evt):
+        pos = evt.GetPosition()
+        pos = self.ScreenToClient(pos)
+        self.PopupMenu(self.popupmenu, pos)
+
+    def Closing(self, event): # Cleanup cleanup, everybody do your share
+        #self.thread.StopThreads()
+        #self.thread.Destroy()
+        log.info(_('Cleaning up plugins'))
+        for name, instance, type, version in plugins.InterfacePluginList: instance.cleanup()
+        log.info(_('Shutting down'))
+        self.Destroy()
+
+    def OnClose(self, event):
+        self.list.DeleteAllItems()
+        self.projectDetails.Clear()
+        self.list.tabpage.SetPackage()
+        start = startDialog(None, -1, '')
+        success = start.ShowModal()
+        start.Destroy()
+
+        if success == wx.ID_CANCEL:
+            self.Close()
+        else:
+            self.Refresh(project.projects[len(project.projects) - 1].GetData())
+
+    def OnQuit(self, event):       self.Close()
+    def OnHomepage(self, event):   lib.browserOpen(consts.urlHomepage)
+    def OnHelpOnline(self, event): lib.browserOpen(consts.urlHelp)
+    def OnTranslate(self, event):  lib.browserOpen(consts.urlTranslate)
+    def OnReport(self, event):     lib.browserOpen(consts.urlBug)
+    def OnDonate(self, event):     lib.browserOpen(consts.urlDonate)
+    def OnAbout(self, event):
+        info = wx.AboutDialogInfo()
+
+        info.SetIcon(wx.Icon(consts.fileLogo, wx.BITMAP_TYPE_PNG))
+        info.SetName(consts.appName)
+        info.SetVersion(consts.appVersion)
+        info.SetDescription(consts.description)
+        info.SetCopyright(consts.copyright)
+        info.SetWebSite(consts.urlHomepage)
+        info.SetLicence(consts.license)
+        info.AddDeveloper(consts.authors)
+        info.AddDocWriter(consts.docwriters)
+        info.AddArtist(consts.artists)
+        info.AddTranslator(consts.translators)
+
+        wx.AboutBox(info)
+
+    def OnSources(self, event):
+        proj = project.projects[len(project.projects) - 1]
+        name = proj.getSources() + _(' - Sources Editor')
+        edit = FileEditor(name, proj.getSources())
+        if edit.ShowModal() == wx.ID_OK:
+            edit.txt.SaveFile(proj.getSources())
+            if wx.MessageBox(_("Sources have changed. Would you like to reload the package list?"), _("Save Successful"), wx.YES_NO) == 2: #wx.ID_YES:
+                self.OnRefresh(None)
+        edit.Destroy()
+
+    def OnOptions(self, event):
+        options = optionDialog(None, -1, '')
+        if options.ShowModal() == wx.ID_OK:
+            # Set settings
+            consts.proxy_enabled = options.proxyCheckBox.GetValue()
+            conf = open(consts.file_config, 'w')
+            conf.write('LogDir=' + options.logCtrl.GetValue() + '\n' +
+                        #'LocaleDir=' + options.localeCtrl.GetValue() + '\n' +
+                        #'PackagesDir=' + options.packagesCtrl.GetValue() + '\n' +
+                        'PluginsDir=' + options.pluginsCtrl.GetValue() + '\n' +
+                        'ProjectsDir=' + options.projectsCtrl.GetValue() + '\n' +
+                        'PixmapsDir=' + options.pixmapsCtrl.GetValue() + '\n' +
+                        'ThemesDir=' + options.themesCtrl.GetValue() + '\n' +
+                        'DefaultTheme=' + options.defaultThemeCtrl.GetValue() + '\n' +
+                        'CurrentTheme=' + options.defaultThemeCtrl.GetValue() + '\n')
+
+            if options.proxyCheckBox.GetValue():
+                proxy_url = 'http://%s:%s' % (options.proxy_url.GetValue(), options.proxy_port.GetValue())
+                consts.http_proxy = {'http': proxy_url}
+                conf.write('HTTPProxy=' + proxy_url + '\n' +
+                           'ProxyUsername=' + options.proxy_username.GetValue() + '\n' +
+                           'ProxyPassword=' + options.proxy_password.GetValue() + '\n')
+            conf.close()
+            wx.MessageBox(_("If you changed a folder location, changes take affect after restarting Keryx."), _("Saved Changes"))
+        options.Destroy()
+
+    def OnDownload(self, event):
+        # Downloads selected package and dependencies
+        try:
+            selected = self.list.GetSelectedItem()
+            if selected: files = project.projects[len(project.projects) - 1].getDependencies(selected[1])
+        except:
+            return
+
+        # Generate filename list.
+        list = ""
+        for i in range(len(files)):
+            list += files[i][0] + "\n"
+
+        # Confirm downloads
+        dlg = ScrolledMessageDialog(None, _("Confirm Download"), _("Do you wish to download the following") + " " + str(len(files)) + " " + _("files?"), list)
+        #dlg = wx.MessageDialog(None, _("Do you wish to download the following") + " " + str(len(files)) + " " + _("files?") + list, _("Confirm Downloads"), wx.YES_NO | wx.ICON_QUESTION)
+        result = dlg.ShowModal() == wx.ID_OK
+        dlg.Destroy()
+
+        # User doesn't want to download them
+        if not result:
+            self.Refresh(project.projects[len(project.projects) -1].GetData())
+            #self.downloadedLists()
+            return
+
+        # Make sure packages directory exists
+        dir = os.path.join(project.projects[len(project.projects) -1].dir, 'packages')
+        if not os.path.exists(dir):
+            os.mkdir(dir)
+
+        #########################################################
+        # FIXME: Return to the plugin for post download cleanup #
+        #########################################################
+        frame = download(self, None, files)
+        #self.downloads.files = files
+        #self.thread.start(self, self.downloads.start, None) #self.downloadedLsts) # Do nothing after the packages are downloaded
+        #a.start(self, lists.start, None) # New thread
+
+        # If it fails, reset the package lists, in other words, reload the list again.
+
+        #self.download.downloads = files
+        #self.download.start()
+
+        #FIXME: If any package fails to download, set package installed version to blank
+        #list of failed files now stored in frame[1] as returned by download.py
+
+    def OnInstall(self, event):
+
+        dlg = wx.MessageDialog(None, _("This procedure will first make the downloaded packages available to the OS in a format suitable for installation, then will call the OS to install them.  " + \
+                          "These steps both require 'root' access to the machine, so keryx will write the commands to a script and then run it as 'root'.  " + \
+                          "Would you like to continue? (got root?)"),
+                          _("Intro of Install"), wx.YES_NO | wx.ICON_QUESTION)
+        #dlg = InstallProjectDialog(None, -1, _("Install Project"))
+        result = dlg.ShowModal()
+        dlg.Destroy()
+        if result == wx.ID_YES:
+            dlg = wx.MessageDialog(None, _("There are two methods for making the packages available. First, mimicing a Repository and informing the OS of it and letting it use the repo to retrieve its updates, " + \
+                          "or moving the packages directly into the OS'es cache so that the OS thinks its already downloaded them and only needs to install them. This way is easier.  " + \
+                          "Would you like to use the cache method? Selecting 'No' will use the Repo method."), \
+                          _("Choose Install method"), wx.YES_NO | wx.ICON_QUESTION)
+            result = dlg.ShowModal()
+            dlg.Destroy()
+            install = True
+            if result == wx.ID_YES:
+                dlg = wx.MessageDialog(None, _("You can either move your packages you have downloaded to the cache, or just copy them.\n" + \
+                               "Moving them will free up space in your project again. Move?\nPlease ensure no package manager is running before continuing! The script will be run next."), \
+                               _("Move Packages?"), wx.YES_NO | wx.ICON_QUESTION)
+                result = dlg.ShowModal()
+                dlg.Destroy()
+                if result == wx.ID_YES:
+                    move = True
+                else:
+                    move = False
+                install = project.projects[len(project.projects) - 1].plugin.installCache(project.projects[len(project.projects) -1].dir, 'installcache', move=move)
+            elif result == wx.ID_NO:
+                wx.MessageBox(_("This feature is not implemented yet. Sorry."),_("Not Implemented"))
+                #install = project.projects[len(project.projects) - 1].installRepo()
+            if not install:
+                wx.MessageBox(_("Oh no! A error occurred when doing the transfer. Check the log for more details. Make sure no other package manager is running when you try to transfer the files.\n" + \
+                         "Another option is transferring the files by hand (Knowledged users only)."), _("Install Error"))
+            else:
+                wx.MessageBox(_("Install finished."), _("Finished"))
+
+
+    def OnUpdates(self, event):
+        updates = []
+        files = []
+        for (key, value) in project.projects[len(project.projects) - 1].packages.iteritems():
+            if value[0] == 1: updates.append(key)
+
+        # Make sure we have updates
+        if len(updates) == 0:
+            return wx.MessageBox(_("No updates available. Your computer is up-to-date."),_("No updates"))
+
+        # Got a list of package names, lets generate a list of filenames to download
+        for item in updates:
+            files += project.projects[len(project.projects) - 1].getDependencies(item)
+
+        # Make sure packages directory exists
+        dir = os.path.join(project.projects[len(project.projects) - 1].dir, 'packages')
+        if not os.path.exists(dir):
+            os.mkdir(dir)
+
+        frame = download(self, None, files)
+
+    def OnDetails(self, event):
+        for i in range(self.notebook.GetPageCount()): # Find the details page and select it
+            if self.notebook.GetPageText(i) == _("Package Details"): self.notebook.SetSelection(i)
+
+#    def OnOpen(self, event):
+#        dlg = wx.FileDialog(self, message=_("Choose a file"),
+#            defaultDir=consts.dirProjects,
+#            defaultFile="",
+#            wildcard=consts.wildcard,
+#            style=wx.OPEN | wx.CHANGE_DIR)
+
+#        # Show the dialog and retrieve the user response. If it is the OK response,
+#        # process the data
+#        if dlg.ShowModal() == wx.ID_OK:
+#            paths = dlg.GetPaths()
+#            data = project.openKeryx(paths[0])
+#            dlg.Destroy()
+#            if data:
+#                proj = project.project(data[0], data[1], data[2],  data[3], data[4], data[5], data[6], data[7])
+#                project.projects[len(project.projects) -1] = proj # variable must be initialized
+#                self.Refresh(project.projects[len(project.projects) -1].GetData())
+
+#    def OnNew(self, event):
+#        dlg = wx.TextEntryDialog(self, _("What would you like to name your new project?"),
+#                _('New Project'), platform.node())
+#        if dlg.ShowModal() == wx.ID_OK:
+#            response = dlg.GetValue()
+#            #print response
+#        dlg.Destroy()
+
+    def OnUpdateStatus(self, event):
+        dlg = wx.MessageDialog(None, _("This will update the list of packages installed on your computer. Only run this on the computer you created this project on.\n\n" + \
+                          "Would you like to continue?"),
+                          _("Update Status"), wx.YES_NO | wx.ICON_QUESTION)
+        result = dlg.ShowModal()
+        dlg.Destroy()
+        if not result:
+            return
+        if not self.UpdateStatus():
+            dlg = wx.MessageDialog(None, _("Status update failed. Try running Keryx as root (using 'sudo')."),
+                          _("Status Update Failed"), wx.ICON_ERROR)
+            result = dlg.ShowModal()
+            dlg.Destroy()
+    def UpdateStatus(self):
+        project_dir = project.projects[len(project.projects) -1].dir
+        return project.projects[len(project.projects) - 1].plugin.updateStatus(project_dir)
+
+
+    def OnRefresh(self, event):
+        self.Refresh(project.projects[len(project.projects) -1].GetData())
+    def Refresh(self, data):
+        self.SetTitle(data[0] + " - " + consts.appName + " v" + consts.appVersion)
+        self.projectDetails.Clear()
+        self.projectDetails.AppendText(data[0] + '\n')
+        if data[2] != '': self.projectDetails.AppendText(_("Operating System:") + '\t' + data[2] + '\n')
+        if data[3] != '': self.projectDetails.AppendText(_("Version:") + '\t' + data[3] + '\n')
+        if data[4] != '': self.projectDetails.AppendText(_("Kernel:") + '\t' + data[5] + '\n')
+        if data[5] != '': self.projectDetails.AppendText(_("Architecture:") + '\t' + data[4] + '\n')
+        self.projectDetails.AppendText(_("Drive Free Space:") + '\t' + lib.driveFreeSpace() + '\n')
+        #self.projectDetails.AppendText("%s\n%s\t%s\n%s\t%s\n%s\t%s\n%s\t%s\n%s\t%s" %
+        #    (data[0], os, data[2], v, data[3], k, data[4], a, data[5], f, lib.driveFreeSpace()))
+
+        points = self.projectDetails.GetFont().GetPointSize()
+        style = wx.Font(points, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD)
+        self.projectDetails.SetStyle(0, len(data[0]), wx.TextAttr("black", wx.NullColour, style))
+
+        # Get index file URLs.
+        urls = project.projects[len(project.projects) -1].getUrls()
+
+        # Inquire whether latest package list should be downloaded
+        #dlg = wx.MessageDialog(None, _('Download the latest package list?'),
+        #                  _("Download latest?"), wx.YES_NO | wx.ICON_QUESTION)
+        urls_string = '\n'.join(['\n'.join(x) for x in urls])
+        dlg = ScrolledMessageDialog(None, _("Download Latest?"),
+                            _("Download the latest package list?"), urls_string)
+
+        result = dlg.ShowModal()
+        dlg.Destroy()
+
+        # Load package list
+        self.SetStatusText(_("Loading packages") + "...", 0)
+
+        if result == wx.ID_OK: frame = download(self, self.loadLocal, urls, True)
+        else:                   self.loadLocal()
+
+
+    def loadLocal(self, result=None):
+        #TODO: Verify downloads?
+        thread(self, project.projects[len(project.projects) - 1].loadLocal, self.loadPackages)
+
+    def loadPackages(self, result=None):
+        proj = project.projects[len(project.projects) - 1]
+        #self.thread.Start(project.LocalPackagesThread(proj), None)
+        self.list.SetMap(proj.packages)
+        self.list.SortListItems(1, 1) # Sort column 1, ascending A->Z order
+
+        self.SetStatusText(str(len(proj.packages.keys())) + " " + _("Packages"),0)
+
+# end of class MainApp
+
+# Begin mac9416's wonderful custom dialog!
+
+class ScrolledMessageDialog(wx.Dialog):
+    def __init__(self, parent, title, caption, msg,
+                 pos=wx.DefaultPosition, size=(400,250),
+                 style=wx.DEFAULT_DIALOG_STYLE):
+        wx.Dialog.__init__(self, parent, -1, title, pos, size, style)
+        x, y = pos
+        if x == -1 and y == -1:
+            self.CenterOnScreen(wx.BOTH)
+
+        text1 = wx.StaticText(self, -1, caption, (5, 5), (370, 15))
+        text2 = wx.TextCtrl(self, -1, msg, (5, 20), (370, 220),
+                            style=wx.TE_MULTILINE | wx.TE_READONLY)
+
+        sizer = wx.BoxSizer(wx.VERTICAL)
+
+        btnsizer = wx.BoxSizer(wx.HORIZONTAL)
+        btn = wx.Button(self, wx.ID_CANCEL, _('No'), size=(100, 35))
+        btnsizer.Add(btn, 1)
+        btn = wx.Button(self, wx.ID_OK, _('Yes'), size=(100, 35))
+        btn.SetDefault()
+        btnsizer.Add(btn, 1)
+
+        sizer.Add(text1, 0, wx.EXPAND|wx.ALL, 5)
+        sizer.Add(text2, 0, wx.EXPAND|wx.ALL, 5)
+        sizer.Add(btnsizer, 0, wx.ALIGN_RIGHT | wx.TOP | wx.BOTTOM, 10)
+        self.SetSizerAndFit(sizer)
+
+class InstallProjectDialog(wx.Dialog):
+    def __init__(self, parent, id, title):
+        wx.Dialog.__init__(self, parent, id, title, size=(480, 190))
+
+        panel = wx.Panel(self, -1)
+        vbox = wx.BoxSizer(wx.VERTICAL)
+
+        wx.StaticBox(panel, -1, _("Installation method"), (5, 5), (470, 115))
+
+        self.sys_cache_radio = wx.RadioButton(panel, -1, _("Move packages to system cache"), (15, 30), style=wx.RB_GROUP)
+        self.Bind(wx.EVT_RADIOBUTTON, self.OnSysCache, self.sys_cache_radio)
+        self.local_repo_radio = wx.RadioButton(panel, -1, _("Create local repository"), (15, 55))
+        self.Bind(wx.EVT_RADIOBUTTON, self.OnLocalRepo, self.local_repo_radio)
+
+        self.dir_textctrl = wx.TextCtrl(self, -1, "", (190, 85), (200, 25))
+        self.dir_textctrl.Disable()
+        self.browse_btn = buttons.GenBitmapTextButton(panel, -1, wx.Bitmap(consts.icon_open), _("Save to..."), (40, 80), (140, 30))
+        self.browse_btn.Disable()
+        self.Bind(wx.EVT_BUTTON, self.OnBrowse, self.browse_btn)
+
+        wx.CheckBox(panel, -1, _("Delete packages from project folder after installation"), (5, 125))
+
+        hbox = wx.BoxSizer(wx.HORIZONTAL)
+        btn = wx.Button(self, -1, 'Cancel', size=(100, 30))
+        hbox.Add(btn, 1)
+        btn = wx.Button(self, -1, 'Continue', size=(100, 30))
+        hbox.Add(btn, 1, wx.LEFT, 5)
+
+        vbox.Add(panel)
+        vbox.Add(hbox, 1, wx.ALIGN_CENTER | wx.TOP | wx.BOTTOM, 10)
+
+        self.SetSizer(vbox)
+
+    def OnBrowse(self, evt):
+        print "Browsing..."
+
+    def OnLocalRepo(self, evt):
+        self.dir_textctrl.Enable()
+        self.browse_btn.Enable()
+
+    def OnSysCache(self, evt):
+        self.dir_textctrl.Disable()
+        self.browse_btn.Disable()

=== added file 'lib/wxkeryx/misc.py'
--- lib/wxkeryx/misc.py	1970-01-01 00:00:00 +0000
+++ lib/wxkeryx/misc.py	2010-01-06 01:45:26 +0000
@@ -0,0 +1,265 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import lib, os.path, urllib, wx
+import wx.lib.delayedresult as delayedresult
+import wx.lib.mixins.listctrl  as  listmix
+from lib import consts, log
+
+class VirtualList(wx.ListCtrl, listmix.ListCtrlAutoWidthMixin, listmix.ColumnSorterMixin):
+    def __init__(self, parent, tabpage, data = {}):
+        wx.ListCtrl.__init__( self, parent, -1, style=wx.LC_SINGLE_SEL|wx.LC_REPORT|wx.LC_VIRTUAL|wx.LC_HRULES|wx.LC_VRULES)
+        self.tabpage = tabpage
+        # Add some art
+        self.il = wx.ImageList(16, 16)
+        self.sm_up = self.il.Add(wx.Bitmap(consts.icon_arrow_up))
+        self.sm_dn = self.il.Add(wx.Bitmap(consts.icon_arrow_down))
+        self.uptodate = self.il.Add(wx.Bitmap(consts.icon_uptodate))
+        self.update = self.il.Add(wx.Bitmap(consts.icon_update))
+        self.error = self.il.Add(wx.Bitmap(consts.icon_error))
+        self.downloaded = self.il.Add(wx.Bitmap(consts.icon_downloaded))
+        self.SetImageList(self.il, wx.IMAGE_LIST_SMALL)
+
+        # Add some attributes (colourful background for each item rows)
+        self.attrUpdate = wx.ListItemAttr()
+        self.attrUpdate.SetBackgroundColour("light blue") # blue
+        self.attrUptodate = wx.ListItemAttr()
+        self.attrUptodate.SetBackgroundColour(wx.Color(150, 235, 140)) # green
+        self.attrError = wx.ListItemAttr()
+        self.attrError.SetBackgroundColour(wx.Color(255, 118, 106)) # red
+        self.attrDownloaded = wx.ListItemAttr()
+        self.attrDownloaded.SetBackgroundColour(wx.Color(255, 215, 100)) # yellow
+
+        # Build the columns
+        count = 0
+        for title, width in consts.columns:
+            self.InsertColumn(count, title)
+            self.SetColumnWidth(count, width)
+            count += 1
+        #self.InsertColumn(0, _("S"))
+        #self.InsertColumn(1, _("Package Name"))
+        #self.InsertColumn(2, _("Installed Version"))
+        #self.InsertColumn(3, _("Latest Version"))
+        #self.InsertColumn(4, _("Description"))
+
+        #self.SetColumnWidth(0, 50)
+        #self.SetColumnWidth(1, 200)
+        #self.SetColumnWidth(2, 200)
+        #self.SetColumnWidth(3, 200)
+        #self.SetColumnWidth(4, 200)
+
+        #These two should probably be passed to init more cleanly
+        #setting the numbers of items = number of elements in the dictionary
+        self.SetMap(data)
+        self.currentItem = None
+
+        #mixins
+        listmix.ListCtrlAutoWidthMixin.__init__(self)
+        listmix.ColumnSorterMixin.__init__(self, 3)
+
+        #sort by genre (column 2), A->Z ascending order (1)
+        #self.SortListItems(0, 1)
+
+        #events
+        self.Bind(wx.EVT_LIST_ITEM_SELECTED, self.OnItemSelected)
+        self.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.OnItemActivated)
+        self.Bind(wx.EVT_LIST_ITEM_DESELECTED, self.OnItemDeselected)
+
+    def SetMap(self, dataMap):
+        self.itemDataMap = dataMap
+        self.itemIndexMap = dataMap.keys()
+        self.SetItemCount(len(dataMap))
+        self.tabpage.SetPackage()
+        self.Refresh()
+
+    def OnColClick(self,event): event.Skip()
+
+    def GetSelectedItem(self): return self.itemDataMap[self.itemIndexMap[self.currentItem]]
+
+    def OnItemSelected(self, event):
+        self.currentItem = event.m_itemIndex
+        index=self.itemIndexMap[self.currentItem]
+        self.tabpage.SetPackage(self.itemDataMap[index])
+
+    def OnItemActivated(self, event):
+        self.currentItem = event.m_itemIndex
+        #print 'item activated'
+
+    def getColumnText(self, index, col):
+        item = self.GetItem(index, col)
+        return item.GetText()
+
+    def OnItemDeselected(self, evt):
+        pass
+
+    def OnGetItemText(self, item, col):
+        index=self.itemIndexMap[item]
+        s = self.itemDataMap[index][col]
+        return s
+
+    def OnGetItemImage(self, item):
+        index=self.itemIndexMap[item]
+        icon=self.itemDataMap[index][0]
+
+        if icon==0:
+            return self.uptodate
+        elif icon==1:
+            return self.update
+        elif icon==2:
+            return self.error
+        elif icon==3:
+            return self.downloaded
+        else:
+            return -1
+
+    def OnGetItemAttr(self, item):
+        index=self.itemIndexMap[item]
+        update=self.itemDataMap[index][0]
+
+        if update==0:
+            return self.attrUptodate
+        elif update==1:
+            return self.attrUpdate
+        elif update==2:
+            return self.attrError
+        elif update==3:
+            return self.attrDownloaded
+        else:
+            return None
+
+    def SortItems(self,sorter=cmp):
+        items = list(self.itemDataMap.keys())
+        items.sort(sorter)
+        self.itemIndexMap = items
+
+        # redraw the list
+        self.Refresh()
+
+    # Used by the ColumnSorterMixin, see wx/lib/mixins/listctrl.py
+    def GetListCtrl(self): return self
+
+    # Used by the ColumnSorterMixin, see wx/lib/mixins/listctrl.py
+    def GetSortImages(self): return (self.sm_dn, self.sm_up)
+
+# end of class VirtualList
+
+class detailsTab(object):
+    def __init__(self, notebook):
+        self.notebook = notebook
+        self.pane = wx.Panel(self.notebook, -1, style=wx.TAB_TRAVERSAL)
+        index = self.notebook.GetImageList().Add(wx.Bitmap(consts.icon_package))
+        self.details = wx.TextCtrl(self.pane, style = wx.TE_MULTILINE | wx.TE_RICH | wx.TE_READONLY)
+
+        attr = wx.TextAttr()
+        attr.SetTabs([400])
+        self.details.SetDefaultStyle(attr)
+
+        sizer = wx.BoxSizer()
+        sizer.Add(self.details, 1, wx.EXPAND, 0)
+        self.pane.SetSizer(sizer)
+        self.notebook.AddPage(self.pane, _("Package Details"), False, index)
+
+    def SetPackage(self, stats = ['','','','','','','',0]):
+        self.details.Clear()
+        if stats[1] == '': return
+
+        update = stats[0]
+        name = stats[1]
+        inst = stats[2]
+        latest = stats[3]
+        descrip = stats[4]
+        depends = stats[5]
+        filename = stats[6]
+        size = lib.convert_file_size(stats[7])
+
+        if not name == '': self.details.AppendText(name + '\n')
+        if not descrip == '': self.details.AppendText(_("Description:\t") + descrip + '\n')
+        if not inst == '': self.details.AppendText(_("Installed Version:\t") + inst + '\n')
+        if not latest == '': self.details.AppendText(_("Latest Version:\t") + latest + '\n')
+        if not depends =='': self.details.AppendText(_("Dependencies:\t") + depends + '\n')
+        if not size == '': self.details.AppendText(_("Size:\t") + size + '\n')
+        if not filename == '': self.details.AppendText(_("Filename:\t") + filename + '\n')
+        #self.details.AppendText("%s\n%s\t%s\n%s\t%s\n%s\t%s\n%s\t%s\n%s\t%s\n%s\t%s" %
+        #    (name, d, descrip, i, inst, l, latest, dep, depends, s, size, f, filename))
+
+        # Fixes scrolling issue
+        self.details.ScrollLines(-15)
+
+        points = self.details.GetFont().GetPointSize()
+        style = wx.Font(points, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD)
+        self.details.SetStyle(0, len(name), wx.TextAttr("black", wx.NullColour, style))
+
+# end of class detailsTab
+
+class ProportionalSplitter(wx.SplitterWindow):
+        def __init__(self,parent, id = -1, proportion=0.60, size = wx.DefaultSize, **kwargs):
+                wx.SplitterWindow.__init__(self,parent,id,wx.Point(0, 0),size, **kwargs)
+                self.SetMinimumPaneSize(50) #the minimum size of a pane.
+                self.proportion = proportion
+                if not 0 < self.proportion < 1:
+                        raise ValueError, "proportion value for ProportionalSplitter must be between 0 and 1."
+                self.ResetSash()
+                self.Bind(wx.EVT_SIZE, self.OnReSize)
+                self.Bind(wx.EVT_SPLITTER_SASH_POS_CHANGED, self.OnSashChanged, id=id)
+                ##hack to set sizes on first paint event
+                self.Bind(wx.EVT_PAINT, self.OnPaint)
+                self.firstpaint = True
+
+        def SplitHorizontally(self, win1, win2):
+                if self.GetParent() is None: return False
+                return wx.SplitterWindow.SplitHorizontally(self, win1, win2,
+                        int(round(self.GetParent().GetSize().GetHeight() * self.proportion)))
+
+        def SplitVertically(self, win1, win2):
+                if self.GetParent() is None: return False
+                return wx.SplitterWindow.SplitVertically(self, win1, win2,
+                        int(round(self.GetParent().GetSize().GetWidth() * self.proportion)))
+
+        def GetExpectedSashPosition(self):
+                if self.GetSplitMode() == wx.SPLIT_HORIZONTAL:
+                        tot = max(self.GetMinimumPaneSize(),self.GetParent().GetClientSize().height)
+                else:
+                        tot = max(self.GetMinimumPaneSize(),self.GetParent().GetClientSize().width)
+                return int(round(tot * self.proportion))
+
+        def ResetSash(self):
+                self.SetSashPosition(self.GetExpectedSashPosition())
+
+        def OnReSize(self, event):
+                "Window has been resized, so we need to adjust the sash based on self.proportion."
+                self.ResetSash()
+                event.Skip()
+
+        def OnSashChanged(self, event):
+                "We'll change self.proportion now based on where user dragged the sash."
+                pos = float(self.GetSashPosition())
+                if self.GetSplitMode() == wx.SPLIT_HORIZONTAL:
+                        tot = max(self.GetMinimumPaneSize(),self.GetParent().GetClientSize().height)
+                else:
+                        tot = max(self.GetMinimumPaneSize(),self.GetParent().GetClientSize().width)
+                self.proportion = pos / tot
+                event.Skip()
+
+        def OnPaint(self,event):
+                if self.firstpaint:
+                        if self.GetSashPosition() != self.GetExpectedSashPosition():
+                                self.ResetSash()
+                        self.firstpaint = False
+                event.Skip()
+
+# end of class ProportionalSplitter

=== added file 'lib/wxkeryx/options.py'
--- lib/wxkeryx/options.py	1970-01-01 00:00:00 +0000
+++ lib/wxkeryx/options.py	2010-01-06 01:45:26 +0000
@@ -0,0 +1,295 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import os.path, shutil, wx
+import wx.lib.buttons as buttons
+import  wx.lib.colourselect as  csel
+from lib import consts, plugins
+
+class optionDialog(wx.Dialog):
+    def __init__(self, *args, **kwds):
+        kwds["style"] = wx.DEFAULT_DIALOG_STYLE
+        wx.Dialog.__init__(self, *args, **kwds)
+        self.SetTitle(_("Options"))
+        self.SetIcon(wx.Icon(consts.fileIco, wx.BITMAP_TYPE_ICO))
+        sizer = wx.BoxSizer(wx.VERTICAL)
+        
+        # Add notebook
+        self.notebook = wx.Notebook(self)
+        self.notebook_il = wx.ImageList(16, 16)
+        self.notebook_il.Add(wx.Bitmap(consts.icon_layout))
+        self.notebook_il.Add(wx.Bitmap(consts.icon_download))
+        self.notebook_il.Add(wx.Bitmap(consts.icon_plugin))
+        self.notebook.SetImageList(self.notebook_il)
+        sizer.Add(self.notebook, 1, wx.EXPAND|wx.TOP|wx.RIGHT|wx.LEFT, 5)
+
+        # Add line
+        line = wx.StaticLine(self, -1, size=(20,-1), style=wx.LI_HORIZONTAL)
+        sizer.Add(line, 0, wx.GROW|wx.ALIGN_CENTER_VERTICAL|wx.RIGHT|wx.LEFT|wx.TOP, 5)
+
+        # Add buttons
+        btnsizer = wx.StdDialogButtonSizer()
+        btn = wx.Button(self, wx.ID_OK)
+        btn.SetDefault()
+        btnsizer.AddButton(btn) 
+        btn = wx.Button(self, wx.ID_CANCEL)
+        btnsizer.AddButton(btn)
+        btnsizer.Realize()
+        sizer.Add(btnsizer, 0, wx.ALIGN_BOTTOM|wx.ALIGN_RIGHT|wx.ALL, 5)
+
+        self.addTabs()
+        self.SetSizer(sizer)
+        self.Fit()
+        
+    def addTabs(self):
+        pane = wx.Panel(self.notebook, -1, style=wx.TAB_TRAVERSAL)
+        vert = wx.BoxSizer(wx.VERTICAL)
+
+        txt = wx.StaticText(pane, -1, _("All directories should be relative paths."))
+        vert.Add(txt, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+
+        sizer = wx.BoxSizer()
+        txt = wx.StaticText(pane, -1, _("Log Directory:"))
+        sizer.Add(txt, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        self.logCtrl = wx.TextCtrl(pane, -1, consts.LogPath, size=wx.Size(250,-1))
+        sizer.Add(self.logCtrl, 1, wx.ALL, 3)
+        vert.Add(sizer, 0, wx.EXPAND)
+
+        sizer = wx.BoxSizer()
+        txt = wx.StaticText(pane, -1, _("Locale Directory:"))
+        sizer.Add(txt, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        self.localeCtrl = wx.TextCtrl(pane, -1, consts.LocalePath)
+        sizer.Add(self.localeCtrl, 1, wx.ALL, 3)
+        vert.Add(sizer, 0, wx.EXPAND)
+
+        #sizer = wx.BoxSizer()
+        #txt = wx.StaticText(pane, -1, _("Packages Directory:"))
+        #sizer.Add(txt, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        #self.packagesCtrl = wx.TextCtrl(pane, -1, consts.PackagesPath)
+        #sizer.Add(self.packagesCtrl, 1, wx.ALL, 3)
+        #vert.Add(sizer, 0, wx.EXPAND)
+        
+        sizer = wx.BoxSizer(wx.HORIZONTAL)
+        txt = wx.StaticText(pane, -1, _("Plugins Directory:"))
+        sizer.Add(txt, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        self.pluginsCtrl = wx.TextCtrl(pane, -1, consts.PluginsPath)
+        sizer.Add(self.pluginsCtrl, 1, wx.ALL, 3)
+        vert.Add(sizer, 0, wx.EXPAND)
+
+        sizer = wx.BoxSizer(wx.HORIZONTAL)
+        txt = wx.StaticText(pane, -1, _("Projects Directory:"))
+        sizer.Add(txt, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        self.projectsCtrl = wx.TextCtrl(pane, -1, consts.ProjectsPath)
+        sizer.Add(self.projectsCtrl, 1, wx.ALL, 3)
+        vert.Add(sizer, 0, wx.EXPAND)
+        
+        sizer = wx.BoxSizer(wx.HORIZONTAL)
+        txt = wx.StaticText(pane, -1, _("Themes Directory:"))
+        sizer.Add(txt, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        self.pixmapsCtrl = wx.TextCtrl(pane, -1, consts.PixmapsPath)
+        sizer.Add(self.pixmapsCtrl, 1, wx.ALL, 3)
+        vert.Add(sizer, 0, wx.EXPAND)
+        
+        sizer = wx.BoxSizer(wx.HORIZONTAL)
+        txt = wx.StaticText(pane, -1, _("Themes Directory:"))
+        sizer.Add(txt, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        self.themesCtrl = wx.TextCtrl(pane, -1, consts.ThemesPath)
+        sizer.Add(self.themesCtrl, 1, wx.ALL, 3)
+        vert.Add(sizer, 0, wx.EXPAND)
+        
+        sizer = wx.BoxSizer(wx.HORIZONTAL)
+        txt = wx.StaticText(pane, -1, _("Default Theme Directory:"))
+        sizer.Add(txt, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        self.defaultThemeCtrl = wx.TextCtrl(pane, -1, consts.ThemeDefaultPath)
+        sizer.Add(self.defaultThemeCtrl, 1, wx.ALL, 3)
+        vert.Add(sizer, 0, wx.EXPAND)
+
+        pane.SetSizer(vert)
+        self.notebook.AddPage(pane, _("Directories"), False, 0)
+        
+        ### Second page ### THIS PAGE IS USED FOR THE PROXY
+        pane = wx.Panel(self.notebook, -1, style=wx.TAB_TRAVERSAL)
+        vert = wx.BoxSizer(wx.VERTICAL)
+        # vert keeps track of the vertical objects in the page (rows)
+
+        self.proxyCheckBox= wx.CheckBox(pane, -1, "Enable proxy support")
+        self.proxyCheckBox.SetValue(consts.proxy_enabled) # Set proxy value
+        vert.Add(self.proxyCheckBox, 0, wx.ALL, 3)
+
+        # Make a bold font.
+        bold_font = wx.Font(10, wx.DEFAULT, wx.NORMAL, wx.BOLD)#, False, u'Comic Sans MS')
+        
+        sizer = wx.BoxSizer(wx.HORIZONTAL)
+        # Add the "URL:" static text.
+        url = wx.StaticText(pane, -1, _("URL: "))
+        url.SetFont(bold_font)
+        sizer.Add(url, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        # Add the "http://"; static text.
+        http = wx.StaticText(pane, -1, _("http://";))
+        sizer.Add(http, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        # Add the URL text box.
+        self.proxy_url = wx.TextCtrl(pane, -1, '')
+        sizer.Add(self.proxy_url, 1, wx.ALL, 3)
+        # Add the ":" static text.
+        colon = wx.StaticText(pane, -1, _(":"))
+        sizer.Add(colon, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        # Add the port text box.
+        self.proxy_port = wx.TextCtrl(pane, -1, '')
+        sizer.Add(self.proxy_port, 1, wx.ALL, 3)
+        vert.Add(sizer, 0, wx.EXPAND)
+
+        sizer = wx.BoxSizer(wx.HORIZONTAL)
+        txt = wx.StaticText(pane, -1, _("Username:"))
+        txt.SetFont(bold_font)
+        sizer.Add(txt, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        self.proxy_username = wx.TextCtrl(pane, -1, consts.proxy_username)
+        sizer.Add(self.proxy_username, 1, wx.ALL, 3)
+        vert.Add(sizer, 0, wx.EXPAND)
+
+        sizer = wx.BoxSizer(wx.HORIZONTAL)
+        txt = wx.StaticText(pane, -1, _("Password:"))
+        txt.SetFont(bold_font)
+        sizer.Add(txt, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        self.proxy_password = wx.TextCtrl(pane, -1, consts.proxy_password, style=wx.TE_PASSWORD)
+        sizer.Add(self.proxy_password, 1, wx.ALL, 3)
+        vert.Add(sizer, 0, wx.EXPAND)
+
+        pane.SetSizer(vert)
+        self.notebook.AddPage(pane, _("Download Options"), False, 1)
+
+        self.LoadProxy()
+        self.OnChecked(None) # Enable/Disable proxy textbox based on checkbox status
+        self.Bind(wx.EVT_CHECKBOX, self.OnChecked, self.proxyCheckBox)
+
+        ### Third page ###
+        pane = wx.Panel(self.notebook, -1, style=wx.TAB_TRAVERSAL)
+        sizer = wx.BoxSizer(wx.VERTICAL)
+        
+        txt = wx.StaticText(pane, -1, _("Loaded plugins:"))
+        txt.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.BOLD, 0, ""))
+        sizer.Add(txt, 0, wx.ALL, 3)
+
+        self.pluginList = wx.ListBox(pane)
+        sizer.Add(self.pluginList, 1, wx.EXPAND, 0)
+
+        self.fill()
+
+        sizer2 = wx.BoxSizer(wx.HORIZONTAL)
+        self.disableBtn = buttons.GenBitmapTextButton(pane, -1, wx.Bitmap(consts.icon_plugin_disable), _("Disable"))#, size=(120, 25))
+        sizer2.Add(self.disableBtn, 0, wx.ALL, 3)
+        self.Bind(wx.EVT_BUTTON, self.OnDisable, self.disableBtn)
+
+        #bmp = wx.Bitmap(os.path.join(consts.dirPixmaps, 'plugin_go.png'))
+        #self.disableBtn = buttons.GenBitmapTextButton(pane, -1, bmp, _("Start"))#, size=(120, 25))
+        #sizer2.Add(self.disableBtn, 0, wx.ALL, 3)
+                
+        self.addBtn = buttons.GenBitmapTextButton(pane, -1, wx.Bitmap(consts.icon_plugin_add), _("Add"))#, size=(120, 25))
+        sizer2.Add(self.addBtn, 0, wx.ALL, 3)
+        self.Bind(wx.EVT_BUTTON, self.OnAdd, self.addBtn)
+        
+        #bmp = wx.Bitmap(os.path.join(consts.dirPixmaps, 'plugin_edit.png'))
+        #self.disableBtn = buttons.GenBitmapTextButton(pane, -1, bmp, _("Edit"))#, size=(120, 25))
+        #sizer2.Add(self.disableBtn, 0, wx.ALL, 3)
+        
+        #bmp = wx.Bitmap(os.path.join(consts.dirPixmaps, 'plugin_delete.png'))
+        #self.disableBtn = buttons.GenBitmapTextButton(pane, -1, bmp, _("Delete"))#, size=(120, 25))
+        #sizer2.Add(self.disableBtn, 0, wx.ALL, 3)
+
+        sizer.Add(sizer2)
+        pane.SetSizer(sizer)
+        self.notebook.AddPage(pane, _("Plugins"), False, 2)
+
+    def OnChecked(self, evt):
+        if self.proxyCheckBox.GetValue():
+            self.proxy_url.Enable()
+            self.proxy_port.Enable()
+            self.proxy_username.Enable()
+            self.proxy_password.Enable()
+        else:
+            self.proxy_url.Disable() 
+            self.proxy_port.Disable() 
+            self.proxy_username.Disable()
+            self.proxy_password.Disable()
+
+    def LoadProxy(self):
+        """So right here, we've got to grab the value from the config and set it in the interface"""
+        try:
+            url = consts.http_proxy['http']
+            (url, port) = (url.split(':')[1][2:], url.split(':')[-1])
+            self.proxy_url.SetValue(url)
+            self.proxy_port.SetValue(port)
+        except: pass
+
+    def fill(self): # Fill plugin list
+        self.pluginList.Clear()
+        for item in plugins.OSPluginList: self.pluginList.Append(item[0])
+        for item in plugins.InterfacePluginList: self.pluginList.Append(item[0])
+
+    def OnAdd(self, evt):
+        dlg = wx.FileDialog(self, message=_("Choose a file"),
+                            defaultDir = os.getcwd(), 
+                            defaultFile = "",
+                            wildcard = consts.wildcard_plugin,
+                            style=wx.OPEN | wx.CHANGE_DIR)
+
+        # Show the dialog and retrieve the user response. If it is the OK response, 
+        # process the data
+        if dlg.ShowModal() == wx.ID_OK:
+            file = dlg.GetPaths()
+            dlg.Destroy()
+            if file[0]:
+                # Copy the file to the plugins directory
+                shutil.copyfile(file[0], os.path.join(consts.dirPlugins, os.path.basename(file[0]))) 
+        else: return
+
+        wx.MessageBox(_("Plugin installed successfully. Restart Keryx to load the plugin."), _("Install Successful"))
+
+    def OnDisable(self, evt):
+        def disable(instance):
+            try:
+                instance.cleanup()
+                wx.MessageBox(_("Plugin disabled successfully."))
+                return True
+            except: return False
+
+        temp = []
+        for item in plugins.OSPluginList: 
+            if item[0] == self.pluginList.Items[self.pluginList.GetSelection()]:
+                if disable(item[1]): # Successfully disabled
+                    temp = []
+                    for i in plugins.OSPluginList:
+                        if i[0] != item[0]: temp.append(i)
+                    plugins.OSPluginList = temp
+                    self.fill()
+                    return
+                
+        for item in plugins.InterfacePluginList: 
+            if item[0] == self.pluginList.Items[self.pluginList.GetSelection()]:
+                if disable(item[1]): # Successfully disabled
+                    for i in plugins.InterfacePluginList:
+                        if i[0] != item[0]: temp.append(i)
+                    plugins.InterfacePluginList = temp
+                    self.fill()
+                    return
+                
+        wx.MessageBox(_("Unable to find plugin."))
+        return False
+        
+# end of class optionDialog
+
+

=== added file 'lib/wxkeryx/startDialog.py'
--- lib/wxkeryx/startDialog.py	1970-01-01 00:00:00 +0000
+++ lib/wxkeryx/startDialog.py	2010-01-06 01:45:26 +0000
@@ -0,0 +1,171 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import lib.project, os.path, platform, wx
+import wx.lib.buttons as buttons
+from lib import consts, log, plugins
+from lib.project import Project
+
+class startDialog(wx.Dialog):
+    """ Startup dialog """
+    def __init__(self, *args, **kwds):
+        kwds["style"] = wx.DEFAULT_DIALOG_STYLE
+        wx.Dialog.__init__(self, *args, **kwds)
+        self.SetIcon(wx.Icon(consts.fileIco, wx.BITMAP_TYPE_ICO))
+        self.bitmap = wx.StaticBitmap(self, -1, wx.Bitmap(consts.fileLogo))
+        self.welcomeText = wx.StaticText(self, -1, consts.welcome_message)
+        self.newText = wx.StaticText(self, -1, _("To get started, create a new project."))
+        self.nameTextCtrl = wx.TextCtrl(self, -1, platform.node())#, size=(120,20))
+        self.choice = wx.Choice(self, -1, choices=[], style=wx.CB_SORT)
+
+        # Append the plugins into the combo box
+        for name, instance, type, ver in plugins.OSPluginList: self.choice.Append(name)
+        self.choice.Select(0)
+
+        self.newProjectButton = buttons.GenBitmapTextButton(self, -1, wx.Bitmap(consts.icon_new), _("New Project"))#, size=(110, 25))
+        self.static_line = wx.StaticLine(self, -1)
+        self.openTxt = wx.StaticText(self, -1, _("Open a project:"))
+        self.openProjBox = wx.Choice(self, -1, choices=[_('Browse...')], style=wx.CB_SORT)
+        
+        self.projects = []
+        for root, dirs, files in os.walk(consts.dirProjects):
+            for item in files:
+                if item.endswith(consts.appFileExt): 
+                    self.openProjBox.Append(item[:-6])
+                    self.projects.append(os.path.join(root, item))
+                    
+        try:    self.openProjBox.Select(1)
+        except: self.openProjBox.Select(0)
+
+        self.openProjectButton = buttons.GenBitmapTextButton(self, -1, wx.Bitmap(consts.icon_open), _("Open Project"))#, size=(120, 25))
+
+        self.SetTitle(consts.welcome_message)
+        self.welcomeText.SetFont(wx.Font(8, wx.DEFAULT, wx.NORMAL, wx.BOLD, 0, ""))
+        
+        self.__do_layout()
+        self.Bind(wx.EVT_BUTTON, self.OnNewProject, self.newProjectButton)
+        self.Bind(wx.EVT_BUTTON, self.OnOpenProject, self.openProjectButton)
+        
+    def __do_layout(self):
+        # begin wxGlade: startDialog.__do_layout
+        sizer_1 = wx.BoxSizer(wx.VERTICAL)
+        sizer_3 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_2 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_1.Add(self.bitmap, 0, wx.ALIGN_CENTER_HORIZONTAL, 0)
+        sizer_1.Add(self.welcomeText, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL, 3)
+        sizer_1.Add(self.newText, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL, 3)
+        sizer_2.Add(self.nameTextCtrl, 1, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        sizer_2.Add(self.choice, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        sizer_2.Add(self.newProjectButton, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        sizer_1.Add(sizer_2, 1, wx.EXPAND|wx.ALL|wx.ALIGN_CENTER_HORIZONTAL, 3)
+        sizer_1.Add(self.static_line, 0, wx.LEFT|wx.RIGHT|wx.EXPAND, 5)
+        sizer_3.Add(self.openTxt, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        sizer_3.Add(self.openProjBox, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 3)
+        sizer_3.Add(self.openProjectButton, 0, wx.ALL|wx.ALIGN_CENTER_VERTICAL, 5)
+        sizer_1.Add(sizer_3, 1, wx.ALIGN_CENTER_HORIZONTAL, 0)
+        self.SetSizer(sizer_1)
+        sizer_1.Fit(self)
+        self.Layout()
+        self.Centre()
+        
+    def OnNewProject(self, event): # wxGlade: startDialog.<event_handler>
+        projName = self.nameTextCtrl.GetLineText(0)
+        plugin = self.choice.GetSelection()
+
+        if projName == '' or plugin == -1: 
+            wx.MessageBox(_("Please enter a project name and select an OS plugin."), _("Error"))
+            return
+
+        # Append new project
+        lib.project.projects.append(Project())
+        project = lib.project.projects[len(lib.project.projects) - 1]
+        
+        # Grab the plugin entry
+        plugin_index = -1
+        name = self.choice.GetItems()[plugin]
+        for i in range(len(plugins.OSPluginList)):
+            if plugins.OSPluginList[i][0]==name: plugin_index = i
+
+        if plugin_index == -1: 
+            wx.MessageBox(_("Unable to find plugin"), _("Error"))
+            return
+        
+        if not plugins.OSPluginList[plugin_index][1].IsOS():
+            wx.MessageBox(_("Please create the project on the plugin's supported OS."), _("Error"))
+            return
+
+        # Create project
+        success, filename = project.CreateKeryx(projName, 
+                                                plugins.OSPluginList[plugin_index][0],
+                                                plugins.OSPluginList[plugin_index][1])
+        
+        if not success:
+            wx.MessageBox(_("Unable to create project. Make sure a project by this name does not already exist."), _("Error"))
+            return
+
+        success = project.OpenKeryx(filename)
+
+        if success: self.EndModal(wx.ID_OK)
+        else:
+            log.error(_("Unable to open project"))
+            wx.MessageBox(_("Make sure you have a plugin loaded to support this project."), _("Unable to open project."))
+
+    def OnOpenProject(self, event): # wxGlade: startFrame.<event_handler>
+        val = self.openProjBox.GetItems()[self.openProjBox.GetSelection()]
+        if val != _('Browse...'): 
+            # Find the entry in self.projects for the current val's information
+            index = -1
+            for i in range(len(self.projects)):
+                if self.projects[i].find(val+consts.appFileExt) != -1: index = i #
+            
+            if index == -1: return # Return if we didnt find it
+
+            result = self.openPath(self.projects[index])
+            if result == True: self.EndModal(wx.ID_OK)
+        else:
+            dlg = wx.FileDialog(self, message=_("Choose a file"),
+                            defaultDir=consts.dirProjects, 
+                            defaultFile="",
+                            wildcard=consts.wildcard,
+                            style=wx.OPEN | wx.CHANGE_DIR)
+
+            # Show the dialog and retrieve the user response. If it is the OK response, 
+            # process the data
+            if dlg.ShowModal() == wx.ID_OK:
+                paths = dlg.GetPaths()
+                dlg.Destroy()
+                result = self.openPath(paths[0])
+                if result == True: self.EndModal(wx.ID_OK)
+
+    def openPath(self, path):
+        # Append a new project
+        lib.project.projects.append(Project())
+        project = lib.project.projects[len(lib.project.projects) - 1]
+
+        # Load the project from file
+        if project.OpenKeryx(path):
+            log.info(_("Opened project") + ": " + project.name)
+            return True
+        else:
+            # Remove project
+            lib.project.projects.pop()
+            log.error(_("Unable to open project"))
+            wx.MessageBox(_("Make sure you have a plugin loaded to support this project."), _("Unable to open project."))
+            return False
+                
+# end of class startDialog

=== added directory 'locale'
=== added directory 'locale/ar'
=== added directory 'locale/ar/LC_MESSAGES'
=== added file 'locale/ar/LC_MESSAGES/keryx.mo'
Binary files locale/ar/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/ar/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added directory 'locale/cs'
=== added directory 'locale/cs/LC_MESSAGES'
=== added file 'locale/cs/LC_MESSAGES/keryx.mo'
Binary files locale/cs/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/cs/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added directory 'locale/en_CA'
=== added directory 'locale/en_CA/LC_MESSAGES'
=== added file 'locale/en_CA/LC_MESSAGES/keryx.mo'
Binary files locale/en_CA/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/en_CA/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added directory 'locale/es'
=== added directory 'locale/es/LC_MESSAGES'
=== added file 'locale/es/LC_MESSAGES/keryx.mo'
Binary files locale/es/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/es/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added directory 'locale/fr'
=== added directory 'locale/fr/LC_MESSAGES'
=== added file 'locale/fr/LC_MESSAGES/keryx.mo'
Binary files locale/fr/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/fr/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added directory 'locale/id'
=== added directory 'locale/id/LC_MESSAGES'
=== added file 'locale/id/LC_MESSAGES/keryx.mo'
Binary files locale/id/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/id/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added directory 'locale/ml'
=== added directory 'locale/ml/LC_MESSAGES'
=== added file 'locale/ml/LC_MESSAGES/keryx.mo'
Binary files locale/ml/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/ml/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added directory 'locale/nb'
=== added directory 'locale/nb/LC_MESSAGES'
=== added file 'locale/nb/LC_MESSAGES/keryx.mo'
Binary files locale/nb/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/nb/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added directory 'locale/pt'
=== added directory 'locale/pt/LC_MESSAGES'
=== added file 'locale/pt/LC_MESSAGES/keryx.mo'
Binary files locale/pt/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/pt/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added directory 'locale/pt_BR'
=== added directory 'locale/pt_BR/LC_MESSAGES'
=== added file 'locale/pt_BR/LC_MESSAGES/keryx.mo'
Binary files locale/pt_BR/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/pt_BR/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added directory 'locale/ru'
=== added directory 'locale/ru/LC_MESSAGES'
=== added file 'locale/ru/LC_MESSAGES/keryx.mo'
Binary files locale/ru/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/ru/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added directory 'locale/si'
=== added directory 'locale/si/LC_MESSAGES'
=== added file 'locale/si/LC_MESSAGES/keryx.mo'
Binary files locale/si/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/si/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added directory 'locale/sv'
=== added directory 'locale/sv/LC_MESSAGES'
=== added file 'locale/sv/LC_MESSAGES/keryx.mo'
Binary files locale/sv/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/sv/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added directory 'locale/th'
=== added directory 'locale/th/LC_MESSAGES'
=== added file 'locale/th/LC_MESSAGES/keryx.mo'
Binary files locale/th/LC_MESSAGES/keryx.mo	1970-01-01 00:00:00 +0000 and locale/th/LC_MESSAGES/keryx.mo	2010-01-06 01:45:26 +0000 differ
=== added file 'messages.pot'
--- messages.pot	1970-01-01 00:00:00 +0000
+++ messages.pot	2010-01-06 01:45:25 +0000
@@ -0,0 +1,665 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-02-19 22:13-0600\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@xxxxxx>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: lib/wxkeryx/main.py:256
+msgid " - Sources Editor"
+msgstr ""
+
+#: lib/plugins.py:80
+msgid " failed to load."
+msgstr ""
+
+#: lib/consts.py:36
+msgid " is a package manager for computers without internet."
+msgstr ""
+
+#: lib/consts.py:37
+msgid ""
+" is free software; you can redistribute it and/or \n"
+"modify it under the terms of the GNU General Public License as published by the \n"
+"Free Software Foundation; either version 2 of the License, or (at your option) \n"
+"any later version.\n"
+"\n"
+"Keryx is distributed in the hope that it will be useful, but WITHOUT ANY \n"
+"WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A \n"
+"PARTICULAR PURPOSE. See the GNU General Public License for more details. You \n"
+"should have received a copy of the GNU General Public License along with Keryx; \n"
+"if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite \n"
+"330, Boston, MA  02111-1307  USA"
+msgstr ""
+
+#: plugins/Update.py:75
+msgid " is the latest version."
+msgstr ""
+
+#: lib/wxkeryx/main.py:139
+msgid "&About..."
+msgstr ""
+
+#: lib/wxkeryx/main.py:84
+msgid "&Close Project...\tCtrl+X"
+msgstr ""
+
+#: lib/wxkeryx/main.py:135
+msgid "&Donate"
+msgstr ""
+
+#: lib/wxkeryx/main.py:107
+msgid "&Download Package\tCtrl+D"
+msgstr ""
+
+#: lib/wxkeryx/main.py:97
+msgid "&Edit"
+msgstr ""
+
+#: lib/wxkeryx/main.py:115
+msgid "&Edit Sources....\tCtrl+E"
+msgstr ""
+
+#: lib/wxkeryx/main.py:91
+msgid "&File"
+msgstr ""
+
+#: lib/wxkeryx/main.py:125
+msgid "&Get Help Online"
+msgstr ""
+
+#: lib/wxkeryx/main.py:142
+msgid "&Help"
+msgstr ""
+
+#: lib/wxkeryx/main.py:122
+msgid "&Homepage"
+msgstr ""
+
+#: lib/wxkeryx/main.py:94
+msgid "&Options...\tCtrl+O"
+msgstr ""
+
+#: lib/wxkeryx/main.py:119
+msgid "&Project"
+msgstr ""
+
+#: lib/wxkeryx/main.py:88
+msgid "&Quit\tCtrl+Q"
+msgstr ""
+
+#: lib/wxkeryx/main.py:100
+msgid "&Refresh\tCtrl+R"
+msgstr ""
+
+#: lib/wxkeryx/main.py:128
+msgid "&Translate This Application"
+msgstr ""
+
+#: lib/wxkeryx/main.py:111
+msgid "&View Details\tCtrl+V"
+msgstr ""
+
+#: plugins/Update.py:67
+msgid ") is available for download here:"
+msgstr ""
+
+#: lib/plugins.py:50
+msgid ", exiting."
+msgstr ""
+
+#: plugins/Update.py:67
+msgid "A new release ("
+msgstr ""
+
+#: lib/wxkeryx/main.py:139
+msgid "About "
+msgstr ""
+
+#: lib/wxkeryx/options.py:169
+msgid "Add"
+msgstr ""
+
+#: lib/wxkeryx/options.py:63
+msgid "All directories should be relative paths."
+msgstr ""
+
+#: lib/wxkeryx/delayedresult.py:111 lib/wxkeryx/download.py:145
+msgid "All downloads have been completed successfully."
+msgstr ""
+
+#: lib/consts.py:101 lib/consts.py:103
+msgid "All files"
+msgstr ""
+
+#: lib/wxkeryx/main.py:393
+msgid "Architecture:"
+msgstr ""
+
+#: plugins/Debian.py:46
+msgid "Architecture: "
+msgstr ""
+
+#: lib/consts.py:27
+msgid "Bringing Updates Home."
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:43 lib/wxkeryx/startDialog.py:130
+msgid "Browse..."
+msgstr ""
+
+#: lib/plugins.py:50
+msgid "Cannot find "
+msgstr ""
+
+#: lib/wxkeryx/main.py:68
+msgid "Check the log for more details."
+msgstr ""
+
+#: plugins/Update.py:43
+msgid "Checking for latest Keryx version..."
+msgstr ""
+
+#: lib/wxkeryx/options.py:202 lib/wxkeryx/startDialog.py:141
+msgid "Choose a file"
+msgstr ""
+
+#: lib/wxkeryx/main.py:213
+msgid "Cleaning up plugins"
+msgstr ""
+
+#: lib/wxkeryx/main.py:84
+msgid "Closes the current project"
+msgstr ""
+
+#: plugins/ColorMap.py:54 plugins/ColorMap.py:64
+msgid "Color Map"
+msgstr ""
+
+#: plugins/Debian.py:43
+msgid "Computer Name: "
+msgstr ""
+
+#: lib/wxkeryx/main.py:304
+msgid "Confirm Downloads"
+msgstr ""
+
+#: lib/wxkeryx/download.py:22
+msgid "Current Transfer:"
+msgstr ""
+
+#: lib/wxkeryx/options.py:116
+msgid "Default Theme Directory:"
+msgstr ""
+
+#: lib/wxkeryx/misc.py:194
+msgid "Dependencies:\t"
+msgstr ""
+
+#: lib/consts.py:71
+msgid "Description"
+msgstr ""
+
+#: lib/wxkeryx/misc.py:191
+msgid "Description:\t"
+msgstr ""
+
+#: plugins/Update.py:67
+msgid "Description: "
+msgstr ""
+
+#: lib/wxkeryx/options.py:123
+msgid "Directories"
+msgstr ""
+
+#: lib/wxkeryx/options.py:161
+msgid "Disable"
+msgstr ""
+
+#: lib/wxkeryx/main.py:303
+msgid "Do you wish to download the following"
+msgstr ""
+
+#: lib/wxkeryx/main.py:42 lib/wxkeryx/main.py:74
+msgid "Download"
+msgstr ""
+
+#: lib/wxkeryx/delayedresult.py:111 lib/wxkeryx/download.py:145
+msgid "Download Complete"
+msgstr ""
+
+#: lib/wxkeryx/delayedresult.py:114 lib/wxkeryx/download.py:148
+msgid "Download Failed"
+msgstr ""
+
+#: lib/wxkeryx/options.py:141
+msgid "Download Options"
+msgstr ""
+
+#: lib/wxkeryx/main.py:404
+msgid "Download latest?"
+msgstr ""
+
+#: lib/wxkeryx/main.py:403
+msgid "Download the latest package list?"
+msgstr ""
+
+#: lib/wxkeryx/download.py:83
+msgid "Downloading "
+msgstr ""
+
+#: lib/wxkeryx/download.py:8
+msgid "Downloading..."
+msgstr ""
+
+#: lib/wxkeryx/download.py:104
+msgid "Downloading: "
+msgstr ""
+
+#: lib/wxkeryx/main.py:107
+msgid "Downloads selected package"
+msgstr ""
+
+#: lib/wxkeryx/main.py:394
+msgid "Drive Free Space:"
+msgstr ""
+
+#: lib/wxkeryx/main.py:115
+msgid "Edit project sources"
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:91 lib/wxkeryx/startDialog.py:105
+#: lib/wxkeryx/startDialog.py:109 lib/wxkeryx/startDialog.py:118
+msgid "Error"
+msgstr ""
+
+#: lib/wxkeryx/download.py:120
+msgid "Extracting"
+msgstr ""
+
+#: lib/wxkeryx/download.py:141
+msgid "Failed: "
+msgstr ""
+
+#: lib/wxkeryx/misc.py:196
+msgid "Filename:\t"
+msgstr ""
+
+#: lib/wxkeryx/main.py:104
+msgid "Get &Updates\tCtrl+U"
+msgstr ""
+
+#: lib/wxkeryx/main.py:43
+msgid "Get Updates"
+msgstr ""
+
+#: lib/wxkeryx/main.py:104
+msgid "Grabs all packages that have updates"
+msgstr ""
+
+#: lib/wxkeryx/options.py:134
+msgid "HTTP Proxy URL:"
+msgstr ""
+
+#: lib/wxkeryx/main.py:128
+msgid "Help translate to other languages"
+msgstr ""
+
+#: lib/wxkeryx/main.py:284
+msgid "If you changed a folder location, changes take affect after restarting Keryx."
+msgstr ""
+
+#: lib/wxkeryx/options.py:218
+msgid "Install Successful"
+msgstr ""
+
+#: lib/consts.py:71
+msgid "Installed Version"
+msgstr ""
+
+#: lib/wxkeryx/misc.py:192
+msgid "Installed Version:\t"
+msgstr ""
+
+#: lib/wxkeryx/main.py:392
+msgid "Kernel:"
+msgstr ""
+
+#: plugins/Debian.py:47
+msgid "Kernel: "
+msgstr ""
+
+#: lib/consts.py:28
+msgid "Keryx Project Files"
+msgstr ""
+
+#: lib/consts.py:101
+msgid "Keryx project"
+msgstr ""
+
+#: lib/consts.py:71
+msgid "Latest Version"
+msgstr ""
+
+#: lib/wxkeryx/misc.py:193
+msgid "Latest Version:\t"
+msgstr ""
+
+#: lib/wxkeryx/options.py:151
+msgid "Loaded plugins:"
+msgstr ""
+
+#: lib/wxkeryx/main.py:409
+msgid "Loading packages"
+msgstr ""
+
+#: lib/wxkeryx/delayedresult.py:8
+msgid "Loading..."
+msgstr ""
+
+#: lib/wxkeryx/options.py:74
+msgid "Locale Directory:"
+msgstr ""
+
+#: lib/wxkeryx/options.py:67
+msgid "Log Directory:"
+msgstr ""
+
+#: lib/wxkeryx/main.py:135
+msgid "Make a donation"
+msgstr ""
+
+#: keryx.py:97
+msgid "Make sure a project by this name does not already exist and you have selected the right plugin for this project."
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:126 lib/wxkeryx/startDialog.py:168
+msgid "Make sure you have a plugin loaded to support this project."
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:40
+msgid "New Project"
+msgstr ""
+
+#: lib/wxkeryx/main.py:67
+msgid "No OS plugins were loaded. Make sure you have OS plugins in "
+msgstr ""
+
+#: lib/wxkeryx/main.py:342
+msgid "No updates"
+msgstr ""
+
+#: lib/wxkeryx/main.py:342
+msgid "No updates available. Your computer is up-to-date."
+msgstr ""
+
+#: plugins/Debian.py:44
+msgid "OS Name: "
+msgstr ""
+
+#: plugins/Debian.py:45
+msgid "OS Version: "
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:55
+msgid "Open Project"
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:42
+msgid "Open a project:"
+msgstr ""
+
+#: lib/wxkeryx/main.py:94
+msgid "Open options dialog"
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:162
+msgid "Opened project"
+msgstr ""
+
+#: lib/wxkeryx/main.py:390
+msgid "Operating System:"
+msgstr ""
+
+#: lib/wxkeryx/options.py:28
+msgid "Options"
+msgstr ""
+
+#: lib/wxkeryx/main.py:357 lib/wxkeryx/misc.py:175
+msgid "Package Details"
+msgstr ""
+
+#: lib/consts.py:71
+msgid "Package Name"
+msgstr ""
+
+#: lib/wxkeryx/main.py:424
+msgid "Packages"
+msgstr ""
+
+#: lib/wxkeryx/delayedresult.py:114 lib/wxkeryx/download.py:148
+msgid "Please check"
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:109
+msgid "Please create the project on the plugin's supported OS."
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:91
+msgid "Please enter a project name and select an OS plugin."
+msgstr ""
+
+#: lib/wxkeryx/options.py:224
+msgid "Plugin disabled successfully."
+msgstr ""
+
+#: lib/wxkeryx/options.py:218
+msgid "Plugin installed successfully. Restart Keryx to load the plugin."
+msgstr ""
+
+#: lib/plugins.py:77
+msgid "Plugin loaded: "
+msgstr ""
+
+#: lib/plugins.py:66
+msgid "Plugin(s) have failed to load. This may be due to not having python-wxversion installed."
+msgstr ""
+
+#: lib/wxkeryx/options.py:183
+msgid "Plugins"
+msgstr ""
+
+#: lib/wxkeryx/options.py:88
+msgid "Plugins Directory:"
+msgstr ""
+
+#: plugins/Debian.py:191
+msgid "Problem retrieving Debian version"
+msgstr ""
+
+#: lib/wxkeryx/main.py:193
+msgid "Project Details"
+msgstr ""
+
+#: keryx.py:94
+msgid "Project created successfully."
+msgstr ""
+
+#: lib/wxkeryx/options.py:95
+msgid "Projects Directory:"
+msgstr ""
+
+#: lib/consts.py:103
+msgid "Python File"
+msgstr ""
+
+#: lib/wxkeryx/main.py:88
+msgid "Quit this application"
+msgstr ""
+
+#: lib/wxkeryx/main.py:131
+msgid "R&eport A Problem"
+msgstr ""
+
+#: lib/wxkeryx/main.py:172
+msgid "Ready"
+msgstr ""
+
+#: lib/wxkeryx/download.py:141
+msgid "Reason: "
+msgstr ""
+
+#: lib/wxkeryx/main.py:44
+msgid "Refresh"
+msgstr ""
+
+#: lib/wxkeryx/main.py:100
+msgid "Refresh package list"
+msgstr ""
+
+#: lib/wxkeryx/main.py:131
+msgid "Report a bug"
+msgstr ""
+
+#: lib/consts.py:71
+msgid "S"
+msgstr ""
+
+#: lib/wxkeryx/main.py:260
+msgid "Save Successful"
+msgstr ""
+
+#: lib/wxkeryx/main.py:284
+msgid "Saved Changes"
+msgstr ""
+
+#: lib/wxkeryx/download.py:136
+msgid "Saved to: "
+msgstr ""
+
+#: lib/wxkeryx/main.py:111
+msgid "Shows details of selected package"
+msgstr ""
+
+#: lib/wxkeryx/main.py:215
+msgid "Shutting down"
+msgstr ""
+
+#: lib/wxkeryx/misc.py:195
+msgid "Size:\t"
+msgstr ""
+
+#: lib/wxkeryx/delayedresult.py:114 lib/wxkeryx/download.py:148
+msgid "Some downloads failed to complete."
+msgstr ""
+
+#: lib/wxkeryx/main.py:260
+msgid "Sources have changed. Would you like to reload the package list?"
+msgstr ""
+
+#: lib/wxkeryx/download.py:97
+msgid "Starting"
+msgstr ""
+
+#: lib/wxkeryx/options.py:102 lib/wxkeryx/options.py:109
+msgid "Themes Directory:"
+msgstr ""
+
+#: lib/wxkeryx/delayedresult.py:15 lib/wxkeryx/download.py:18
+msgid "This may take a while. Please be patient."
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:32
+msgid "To get started, create a new project."
+msgstr ""
+
+#: keryx.py:79
+msgid "Unable to create project"
+msgstr ""
+
+#: keryx.py:96
+msgid "Unable to create project."
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:118
+msgid "Unable to create project. Make sure a project by this name does not already exist."
+msgstr ""
+
+#: lib/wxkeryx/download.py:133
+msgid "Unable to extract: "
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:105
+msgid "Unable to find plugin"
+msgstr ""
+
+#: lib/wxkeryx/options.py:248
+msgid "Unable to find plugin."
+msgstr ""
+
+#: plugins/Debian.py:77
+msgid "Unable to open file: "
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:125 lib/wxkeryx/startDialog.py:167
+msgid "Unable to open project"
+msgstr ""
+
+#: lib/wxkeryx/startDialog.py:126 lib/wxkeryx/startDialog.py:168
+msgid "Unable to open project."
+msgstr ""
+
+#: plugins/Debian.py:196
+msgid "Unknown"
+msgstr ""
+
+#: plugins/Update.py:71
+msgid "Update Available"
+msgstr ""
+
+#: lib/wxkeryx/main.py:391
+msgid "Version:"
+msgstr ""
+
+#: lib/wxkeryx/main.py:76
+msgid "View Details"
+msgstr ""
+
+#: lib/wxkeryx/main.py:125
+msgid "Visit the forums"
+msgstr ""
+
+#: lib/wxkeryx/main.py:122
+msgid "Visit the website"
+msgstr ""
+
+#: lib/consts.py:49
+msgid "Welcome to "
+msgstr ""
+
+#: lib/wxkeryx/download.py:83
+msgid "file(s)"
+msgstr ""
+
+#: lib/wxkeryx/main.py:303
+msgid "files?"
+msgstr ""
+
+#: lib/wxkeryx/delayedresult.py:114 lib/wxkeryx/download.py:148
+msgid "for more details."
+msgstr ""
+
+#: lib/wxkeryx/__init__.py:26
+msgid "wxWidgets interface loaded"
+msgstr ""

=== added file 'mki18n.py'
--- mki18n.py	1970-01-01 00:00:00 +0000
+++ mki18n.py	2010-01-06 01:45:25 +0000
@@ -0,0 +1,455 @@
+#! /usr/bin/env python
+# -*- coding: iso-8859-1 -*-
+# 
+#   PYTHON MODULE:     MKI18N.PY
+#                      =========
+# 
+#   Abstract:         Make Internationalization (i18n) files for an application.
+# 
+#   Copyright Pierre Rouleau. 2003. Released to public domain.
+# 
+#   Last update: Saturday, November 8, 2003. @ 15:55:18.
+# 
+#   File: ROUP2003N01::C:/dev/python/mki18n.py
+# 
+#   RCS $Header: //software/official/MKS/MKS_SI/TV_NT/dev/Python/rcs/mki18n.py 1.5 2003/11/05 19:40:04 PRouleau Exp $
+# 
+#   Update history:
+# 
+#   - File created: Saturday, June 7, 2003. by Pierre Rouleau
+#   - 10/06/03 rcs : RCS Revision 1.1  2003/06/10 10:06:12  PRouleau
+#   - 10/06/03 rcs : RCS Initial revision
+#   - 23/08/03 rcs : RCS Revision 1.2  2003/06/10 10:54:27  PRouleau
+#   - 23/08/03 P.R.: [code:fix] : The strings encoded in this file are encode in iso-8859-1 format.  Added the encoding
+#                    notification to Python to comply with Python's 2.3 PEP 263.
+#   - 23/08/03 P.R.: [feature:new] : Added the '-e' switch which is used to force the creation of the empty English .mo file.
+#   - 22/10/03 P.R.: [code] : incorporated utility functions in here to make script self sufficient.
+#   - 05/11/03 rcs : RCS Revision 1.4  2003/10/22 06:39:31  PRouleau
+#   - 05/11/03 P.R.: [code:fix] : included the unixpath() in this file.
+#   - 08/11/03 rcs : RCS Revision 1.5  2003/11/05 19:40:04  PRouleau
+# 
+#   RCS $Log: $
+# 
+# 
+# -----------------------------------------------------------------------------
+"""                                
+mki18n allows you to internationalize your software.  You can use it to 
+create the GNU .po files (Portable Object) and the compiled .mo files
+(Machine Object).
+
+mki18n module can be used from the command line or from within a script (see 
+the Usage at the end of this page).
+
+    Table of Contents
+    -----------------
+    
+    makePO()             -- Build the Portable Object file for the application --
+    catPO()              -- Concatenate one or several PO files with the application domain files. --
+    makeMO()             -- Compile the Portable Object files into the Machine Object stored in the right location. --
+    printUsage           -- Displays how to use this script from the command line --
+
+    Scriptexecution      -- Runs when invoked from the command line --
+
+
+NOTE:  this module uses GNU gettext utilities.
+
+You can get the gettext tools from the following sites:
+
+   - `GNU FTP site for gettetx`_ where several versions (0.10.40, 0.11.2, 0.11.5 and 0.12.1) are available.
+     Note  that you need to use `GNU libiconv`_ to use this. Get it from the `GNU
+     libiconv  ftp site`_ and get version 1.9.1 or later. Get the Windows .ZIP
+     files and install the packages inside c:/gnu. All binaries will be stored
+     inside  c:/gnu/bin.  Just  put c:/gnu/bin inside your PATH. You will need
+     the following files: 
+
+      - `gettext-runtime-0.12.1.bin.woe32.zip`_ 
+      - `gettext-tools-0.12.1.bin.woe32.zip`_
+      - `libiconv-1.9.1.bin.woe32.zip`_ 
+
+
+.. _GNU libiconv:                            http://www.gnu.org/software/libiconv/
+.. _GNU libiconv ftp site:                   http://www.ibiblio.org/pub/gnu/libiconv/
+.. _gettext-runtime-0.12.1.bin.woe32.zip:    ftp://ftp.gnu.org/gnu/gettext/gettext-runtime-0.12.1.bin.woe32.zip           
+.. _gettext-tools-0.12.1.bin.woe32.zip:      ftp://ftp.gnu.org/gnu/gettext/gettext-tools-0.12.1.bin.woe32.zip 
+.. _libiconv-1.9.1.bin.woe32.zip:            http://www.ibiblio.org/pub/gnu/libiconv/libiconv-1.9.1.bin.woe32.zip
+
+"""
+# -----------------------------------------------------------------------------
+# Module Import
+# -------------
+# 
+import os
+import sys
+import wx
+# -----------------------------------------------------------------------------
+# Global variables
+# ----------------
+#
+
+__author__ = "Pierre Rouleau"
+__version__= "$Revision: 1.5 $"
+
+# -----------------------------------------------------------------------------
+
+def getlanguageDict():
+    languageDict = {}
+    
+    for lang in [x for x in dir(wx) if x.startswith("LANGUAGE")]:
+        i = wx.Locale(wx.LANGUAGE_DEFAULT).GetLanguageInfo(getattr(wx, lang))
+        if i:
+            languageDict[i.CanonicalName] = i.Description
+
+    return languageDict
+
+# -----------------------------------------------------------------------------
+# m a k e P O ( )         -- Build the Portable Object file for the application --
+# ^^^^^^^^^^^^^^^
+#
+def makePO(applicationDirectoryPath,  applicationDomain=None, verbose=0) :
+    """Build the Portable Object Template file for the application.
+
+    makePO builds the .pot file for the application stored inside 
+    a specified directory by running xgettext for all application source 
+    files.  It finds the name of all files by looking for a file called 'app.fil'. 
+    If this file does not exists, makePo raises an IOError exception.
+    By default the application domain (the application
+    name) is the same as the directory name but it can be overridden by the
+    'applicationDomain' argument.
+
+    makePO always creates a new file called messages.pot.  If it finds files 
+    of the form app_xx.po where 'app' is the application name and 'xx' is one 
+    of the ISO 639 two-letter language codes, makePO resynchronizes those 
+    files with the latest extracted strings (now contained in messages.pot). 
+    This process updates all line location number in the language-specific
+    .po files and may also create new entries for translation (or comment out 
+    some).  The .po file is not changed, instead a new file is created with 
+    the .new extension appended to the name of the .po file.
+
+    By default the function does not display what it is doing.  Set the 
+    verbose argument to 1 to force it to print its commands.
+    """
+
+    if applicationDomain is None:
+        applicationName = fileBaseOf(applicationDirectoryPath,withPath=0)
+    else:
+        applicationName = applicationDomain
+    currentDir = os.getcwd()
+    os.chdir(applicationDirectoryPath)                    
+    if not os.path.exists('app.fil'):
+        raise IOError(2,'No module file: app.fil')
+
+    # Steps:                                  
+    #  Use xgettext to parse all application modules
+    #  The following switches are used:
+    #  
+    #   -s                          : sort output by string content (easier to use when we need to merge several .po files)
+    #   --files-from=app.fil        : The list of files is taken from the file: app.fil
+    #   --output=                   : specifies the name of the output file (using a .pot extension)
+    cmd = 'xgettext -s --no-wrap --files-from=app.fil --output=messages.pot'
+    if verbose: print cmd
+    os.system(cmd)                                                
+
+    languageDict = getlanguageDict()
+
+    for langCode in languageDict.keys():
+        if langCode == 'en':
+            pass
+        else:
+            langPOfileName = "%s_%s.po" % (applicationName , langCode)
+            if os.path.exists(langPOfileName):
+                cmd = 'msgmerge -s --no-wrap "%s" messages.pot > "%s.new"' % (langPOfileName, langPOfileName)
+                if verbose: print cmd
+                os.system(cmd)
+    os.chdir(currentDir)
+
+# -----------------------------------------------------------------------------
+# c a t P O ( )         -- Concatenate one or several PO files with the application domain files. --
+# ^^^^^^^^^^^^^
+#
+def catPO(applicationDirectoryPath, listOf_extraPo, applicationDomain=None, targetDir=None, verbose=0) :
+    """Concatenate one or several PO files with the application domain files.
+    """
+
+    if applicationDomain is None:
+        applicationName = fileBaseOf(applicationDirectoryPath,withPath=0)
+    else:
+        applicationName = applicationDomain
+    currentDir = os.getcwd()
+    os.chdir(applicationDirectoryPath)
+
+    languageDict = getlanguageDict()
+
+    for langCode in languageDict.keys():
+        if langCode == 'en':
+            pass
+        else:
+            langPOfileName = "%s_%s.po" % (applicationName , langCode)
+            if os.path.exists(langPOfileName):
+                fileList = ''
+                for fileName in listOf_extraPo:
+                    fileList += ("%s_%s.po " % (fileName,langCode))
+                cmd = "msgcat -s --no-wrap %s %s > %s.cat" % (langPOfileName, fileList, langPOfileName)
+                if verbose: print cmd
+                os.system(cmd)
+                if targetDir is None:
+                    pass
+                else:
+                    mo_targetDir = "%s/%s/LC_MESSAGES" % (targetDir,langCode)
+                    cmd = "msgfmt --output-file=%s/%s.mo %s_%s.po.cat" % (mo_targetDir,applicationName,applicationName,langCode)
+                    if verbose: print cmd
+                    os.system(cmd)
+    os.chdir(currentDir)
+
+# -----------------------------------------------------------------------------
+# m a k e M O ( )         -- Compile the Portable Object files into the Machine Object stored in the right location. --
+# ^^^^^^^^^^^^^^^
+# 
+def makeMO(applicationDirectoryPath,targetDir='./locale',applicationDomain=None, verbose=0, forceEnglish=0) :
+    """Compile the Portable Object files into the Machine Object stored in the right location.
+
+    makeMO converts all translated language-specific PO files located inside 
+    the  application directory into the binary .MO files stored inside the 
+    LC_MESSAGES sub-directory for the found locale files.
+
+    makeMO searches for all files that have a name of the form 'app_xx.po' 
+    inside the application directory specified by the first argument.  The 
+    'app' is the application domain name (that can be specified by the 
+    applicationDomain argument or is taken from the directory name). The 'xx' 
+    corresponds to one of the ISO 639 two-letter language codes.
+
+    makeMo stores the resulting files inside a sub-directory of `targetDir`
+    called xx/LC_MESSAGES where 'xx' corresponds to the 2-letter language
+    code.
+    """
+    if targetDir is None:
+        targetDir = './locale'
+    if verbose:
+        print "Target directory for .mo files is: %s" % targetDir
+
+    if applicationDomain is None:
+        applicationName = fileBaseOf(applicationDirectoryPath,withPath=0)
+    else:
+        applicationName = applicationDomain
+    currentDir = os.getcwd()
+    os.chdir(applicationDirectoryPath)
+
+    languageDict = getlanguageDict()
+
+    for langCode in languageDict.keys():
+        if (langCode == 'en') and (forceEnglish==0):
+            pass
+        else:
+            langPOfileName = "%s_%s.po" % (applicationName , langCode)
+            if os.path.exists(langPOfileName):
+                mo_targetDir = "%s/%s/LC_MESSAGES" % (targetDir,langCode) 
+                if not os.path.exists(mo_targetDir):
+                    mkdir(mo_targetDir)
+                cmd = 'msgfmt --output-file="%s/%s.mo" "%s_%s.po"' % (mo_targetDir,applicationName,applicationName,langCode)
+                if verbose: print cmd
+                os.system(cmd)
+    os.chdir(currentDir)
+   
+# -----------------------------------------------------------------------------
+# p r i n t U s a g e         -- Displays how to use this script from the command line --
+# ^^^^^^^^^^^^^^^^^^^
+#
+def printUsage(errorMsg=None) :
+    """Displays how to use this script from the command line."""
+    print """
+    ##################################################################################
+    #   mki18n :   Make internationalization files.                                  #
+    #              Uses the GNU gettext system to create PO (Portable Object) files  #
+    #              from source code, coimpile PO into MO (Machine Object) files.     #
+    #              Supports C,C++,Python source files.                               #
+    #                                                                                #
+    #   Usage: mki18n {OPTION} [appDirPath]                                          #
+    #                                                                                #
+    #   Options:                                                                     #
+    #     -e               : When -m is used, forces English .mo file creation       #
+    #     -h               : prints this help                                        #
+    #     -m               : make MO from existing PO files                          #
+    #     -p               : make PO, update PO files: Creates a new messages.pot    #
+    #                        file. Creates a dom_xx.po.new for every existing        #
+    #                        language specific .po file. ('xx' stands for the ISO639 #
+    #                        two-letter language code and 'dom' stands for the       #
+    #                        application domain name).  mki18n requires that you     #
+    #                        write a 'app.fil' file  which contains the list of all  #
+    #                        source code to parse.                                   #
+    #     -v               : verbose (prints comments while running)                 #
+    #     --domain=appName : specifies the application domain name.  By default      #
+    #                        the directory name is used.                             #
+    #     --moTarget=dir : specifies the directory where .mo files are stored.       #
+    #                      If not specified, the target is './locale'                #
+    #                                                                                #
+    #   You must specify one of the -p or -m option to perform the work.  You can    #
+    #   specify the path of the target application.  If you leave it out mki18n      #
+    #   will use the current directory as the application main directory.            #        
+    #                                                                                #
+    ##################################################################################"""
+    if errorMsg:
+        print "\n   ERROR: %s" % errorMsg
+
+# -----------------------------------------------------------------------------
+# f i l e B a s e O f ( )         -- Return base name of filename --
+# ^^^^^^^^^^^^^^^^^^^^^^^
+# 
+def fileBaseOf(filename,withPath=0) :
+   """fileBaseOf(filename,withPath) ---> string
+
+   Return base name of filename.  The returned string never includes the extension.
+   Use os.path.basename() to return the basename with the extension.  The 
+   second argument is optional.  If specified and if set to 'true' (non zero) 
+   the string returned contains the full path of the file name.  Otherwise the 
+   path is excluded.
+
+   [Example]
+   >>> fn = 'd:/dev/telepath/tvapp/code/test.html'
+   >>> fileBaseOf(fn)
+   'test'
+   >>> fileBaseOf(fn)
+   'test'
+   >>> fileBaseOf(fn,1)
+   'd:/dev/telepath/tvapp/code/test'
+   >>> fileBaseOf(fn,0)
+   'test'
+   >>> fn = 'abcdef'
+   >>> fileBaseOf(fn)
+   'abcdef'
+   >>> fileBaseOf(fn,1)
+   'abcdef'
+   >>> fn = "abcdef."
+   >>> fileBaseOf(fn)
+   'abcdef'
+   >>> fileBaseOf(fn,1)
+   'abcdef'
+   """            
+   pos = filename.rfind('.')             
+   if pos > 0:
+      filename = filename[:pos]
+   if withPath:
+      return filename
+   else:
+      return os.path.basename(filename)
+# -----------------------------------------------------------------------------
+# m k d i r ( )         -- Create a directory (and possibly the entire tree) --
+# ^^^^^^^^^^^^^
+# 
+def mkdir(directory) :
+   """Create a directory (and possibly the entire tree).
+
+   The os.mkdir() will fail to create a directory if one of the
+   directory in the specified path does not exist.  mkdir()
+   solves this problem.  It creates every intermediate directory
+   required to create the final path. Under Unix, the function 
+   only supports forward slash separator, but under Windows and MacOS
+   the function supports the forward slash and the OS separator (backslash
+   under windows).
+   """ 
+
+   # translate the path separators
+   directory = unixpath(directory)
+   # build a list of all directory elements
+   aList = filter(lambda x: len(x)>0, directory.split('/'))
+   theLen = len(aList)                     
+   # if the first element is a Windows-style disk drive
+   # concatenate it with the first directory
+   if aList[0].endswith(':'):
+      if theLen > 1:
+         aList[1] = aList[0] + '/' + aList[1]
+         del aList[0]      
+         theLen -= 1         
+   # if the original directory starts at root,
+   # make sure the first element of the list 
+   # starts at root too
+   if directory[0] == '/':     
+      aList[0] = '/' + aList[0]
+   # Now iterate through the list, check if the 
+   # directory exists and if not create it
+   theDir = ''
+   for i in range(theLen):
+      theDir += aList[i]
+      if not os.path.exists(theDir):
+         os.mkdir(theDir)
+      theDir += '/'   
+      
+# -----------------------------------------------------------------------------
+# u n i x p a t h ( )         -- Return a path name that contains Unix separator. --
+# ^^^^^^^^^^^^^^^^^^^
+# 
+def unixpath(thePath) :
+   r"""Return a path name that contains Unix separator.
+
+   [Example]
+   >>> unixpath(r"d:\test")
+   'd:/test'
+   >>> unixpath("d:/test/file.txt")
+   'd:/test/file.txt'
+   >>> 
+   """
+   thePath = os.path.normpath(thePath)
+   if os.sep == '/':
+      return thePath
+   else:
+      return thePath.replace(os.sep,'/')
+
+# ----------------------------------------------------------------------------- 
+
+# S c r i p t   e x e c u t i o n               -- Runs when invoked from the command line --
+# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+# 
+if __name__ == "__main__":
+    import getopt     # command line parsing
+    argc = len(sys.argv)
+    if argc == 1:
+        printUsage('Missing argument: specify at least one of -m or -p (or both).')
+        sys.exit(1)
+    # If there is some arguments, parse the command line
+    validOptions     = "ehmpv"
+    validLongOptions = ['domain=', 'moTarget=']             
+    option = {}
+    option['forceEnglish'] = 0
+    option['mo'] = 0
+    option['po'] = 0        
+    option['verbose'] = 0
+    option['domain'] = None
+    option['moTarget'] = None
+    try:
+        optionList,pargs = getopt.getopt(sys.argv[1:],validOptions,validLongOptions)
+    except getopt.GetoptError, e:
+        printUsage(e[0])
+        sys.exit(1)       
+    for (opt,val) in optionList:
+        if  (opt == '-h'):    
+            printUsage()
+            sys.exit(0) 
+        elif (opt == '-e'):         option['forceEnglish'] = 1
+        elif (opt == '-m'):         option['mo'] = 1
+        elif (opt == '-p'):         option['po'] = 1
+        elif (opt == '-v'):         option['verbose'] = 1
+        elif (opt == '--domain'):   option['domain'] = val
+        elif (opt == '--moTarget'): option['moTarget'] = val
+    if len(pargs) == 0:
+        appDirPath = os.getcwd()
+        if option['verbose']:
+            print "No project directory given. Using current one:  %s" % appDirPath
+    elif len(pargs) == 1:
+        appDirPath = pargs[0]
+    else:
+        printUsage('Too many arguments (%u).  Use double quotes if you have space in directory name' % len(pargs))
+        sys.exit(1)
+    if option['domain'] is None:
+        # If no domain specified, use the name of the target directory
+        option['domain'] = fileBaseOf(appDirPath)
+    if option['verbose']:
+        print "Application domain used is: '%s'" % option['domain']
+    if option['po']:
+        try:
+            makePO(appDirPath,option['domain'],option['verbose'])
+        except IOError, e:
+            printUsage(e[1] + '\n   You must write a file app.fil that contains the list of all files to parse.')
+    if option['mo']:
+        makeMO(appDirPath,option['moTarget'],option['domain'],option['verbose'],option['forceEnglish'])
+    sys.exit(1)            
+            
+
+# -----------------------------------------------------------------------------

=== added directory 'pixmaps'
=== added file 'pixmaps/keryx.ico'
Binary files pixmaps/keryx.ico	1970-01-01 00:00:00 +0000 and pixmaps/keryx.ico	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/keryx.png'
Binary files pixmaps/keryx.png	1970-01-01 00:00:00 +0000 and pixmaps/keryx.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/keryx.svg'
--- pixmaps/keryx.svg	1970-01-01 00:00:00 +0000
+++ pixmaps/keryx.svg	2010-01-06 01:45:26 +0000
@@ -0,0 +1,244 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/";
+   xmlns:cc="http://creativecommons.org/ns#";
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:xlink="http://www.w3.org/1999/xlink";
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="192"
+   height="192"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   version="1.0"
+   sodipodi:docbase="/home/christof/themes_and_icons/meinICONtheme/BRIT ICONS/scalable/places"
+   sodipodi:docname="keryx.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   inkscape:export-filename="/home/chris/Desktop/keryx.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs4">
+    <linearGradient
+       id="linearGradient6746">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop6748" />
+      <stop
+         id="stop6754"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0.49803922;" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.24705882;"
+         offset="1"
+         id="stop6756" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop6750" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient6736">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop6738" />
+      <stop
+         id="stop6744"
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0.49803922;" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop6740" />
+    </linearGradient>
+    <marker
+       style="overflow:visible"
+       id="DistanceStart"
+       refX="0"
+       refY="0"
+       orient="auto"
+       inkscape:stockid="DistanceStart">
+      <g
+         id="g2300">
+        <path
+           style="fill:none;stroke:#ffffff;stroke-width:1.14999998;stroke-linecap:square"
+           d="M 0,0 L 2,0"
+           id="path2306" />
+        <path
+           style="fill:#000000;fill-rule:evenodd;stroke:none"
+           d="M 0,0 L 13,4 L 9,0 L 13,-4 L 0,0 z"
+           id="path2302" />
+        <path
+           style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:square"
+           d="M 0,-4 L 0,40"
+           id="path2304" />
+      </g>
+    </marker>
+    <linearGradient
+       id="linearGradient4603">
+      <stop
+         style="stop-color:#000000;stop-opacity:1;"
+         offset="0"
+         id="stop4605" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0;"
+         offset="1"
+         id="stop4607" />
+    </linearGradient>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 64 : 1"
+       inkscape:vp_y="6.1230318e-14 : 1000 : 0"
+       inkscape:vp_z="128 : 64 : 1"
+       inkscape:persp3d-origin="64 : 42.666667 : 1"
+       id="perspective9" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4603"
+       id="linearGradient4611"
+       x1="18.715977"
+       y1="67.218224"
+       x2="105.71598"
+       y2="67.218224"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6746"
+       id="linearGradient6752"
+       x1="-161.70448"
+       y1="-72.94191"
+       x2="-120.41798"
+       y2="-72.94191"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.8315381,0,0,1.0038828,-20.347429,0.2832195)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient6746"
+       id="linearGradient6807"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.1039638,0,0,1.3327715,-11.547055,0.1564113)"
+       x1="-161.70448"
+       y1="-72.94191"
+       x2="-120.41798"
+       y2="-72.94191" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#000000"
+     borderopacity="1"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="1.4142136"
+     inkscape:cx="110.7163"
+     inkscape:cy="151.48885"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     width="128px"
+     height="128px"
+     showgrid="true"
+     inkscape:window-width="1440"
+     inkscape:window-height="850"
+     inkscape:window-x="0"
+     inkscape:window-y="0" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Ebene 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <path
+       id="rect10941"
+       style="fill:#262729;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:18;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1"
+       d="M 46.118296,46.755861 L 112.62483,46.755861 C 136.10425,46.755861 155.00645,65.658062 155.00645,89.137477 L 155.00645,98.265824 C 155.00645,121.74524 136.10425,140.64744 112.62483,140.64744 L 46.118296,140.64744 C 22.638881,140.64744 3.7366798,121.74524 3.7366798,98.265824 L 3.7366798,89.137477 C 3.7366798,65.658062 22.638881,46.755861 46.118296,46.755861 z M 3.7366798,46.755861 L 90.129974,46.755861 L 90.129974,98.219253 L 3.7366798,98.219253 L 3.7366798,46.755861 z M 68.613154,89.228392 L 155.00645,89.228392 L 155.00645,140.69177 L 68.613154,140.69177 L 68.613154,89.228392 z" />
+    <text
+       xml:space="preserve"
+       style="font-size:40px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="24.464287"
+       y="75.678574"
+       id="text2382"><tspan
+         sodipodi:role="line"
+         id="tspan2384"
+         x="24.464287"
+         y="75.678574" /></text>
+    <text
+       xml:space="preserve"
+       style="font-size:42.48373032px;font-style:normal;font-weight:normal;fill:#e6e6e6;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream Vera Sans"
+       x="15.746005"
+       y="109.06332"
+       id="text3250"><tspan
+         sodipodi:role="line"
+         id="tspan3252"
+         x="15.746005"
+         y="109.06332"
+         style="stroke:none;stroke-opacity:1">Keryx</tspan></text>
+    <path
+       style="fill:#0197fd;fill-opacity:1"
+       id="path3264"
+       d="M 123.58636,123.88347 C 120.22751,124.50138 116.82785,124.78584 113.42564,125.03326 C 104.13553,125.54248 94.836439,125.8138 85.534737,125.98401 C 77.364501,126.08989 69.178469,126.28056 61.017668,125.7387 C 59.624508,125.64619 58.235651,125.49746 56.844644,125.37685 C 52.000505,124.90077 47.124216,124.1631 42.573115,122.37672 C 41.603758,121.94744 40.879547,121.4385 40.257575,120.59139 L 43.602523,118.62002 C 44.118434,119.39049 44.819605,119.90921 45.652892,120.32201 C 49.947719,122.27607 54.64074,123.06979 59.297366,123.62905 C 60.663527,123.76255 62.027111,123.92575 63.395849,124.02954 C 71.506744,124.64457 79.650889,124.45036 87.774956,124.34967 C 97.198176,124.15255 106.62187,123.86323 116.02024,123.11397 C 117.11707,123.00569 118.21592,122.9161 119.31075,122.78913 C 121.81184,122.49907 124.28478,122.0361 126.74699,121.51791 L 123.58636,123.88347 z" />
+    <path
+       style="fill:#0197fd;fill-opacity:1"
+       id="path3300"
+       d="M 31.657041,66.759526 C 35.746658,66.316471 39.888414,66.412187 43.997238,66.397508 C 55.302444,66.433612 66.608089,66.39372 77.912879,66.500873 C 85.472356,66.610194 93.056461,66.599828 100.58221,67.430056 C 104.91546,67.908092 105.68315,68.149218 109.89083,68.977884 C 116.41834,70.377608 122.54024,73.077466 128.62986,75.732545 L 126.00496,77.476918 C 120.00789,74.7658 113.95492,72.078415 107.49923,70.644107 C 103.37132,69.799654 102.57226,69.549599 98.322539,69.041123 C 90.875895,68.150139 83.362775,68.091845 75.875066,67.978435 C 64.418128,67.866347 52.958873,67.95543 41.504262,68.21556 C 37.759551,68.333769 33.977571,68.365107 30.253238,68.824608 C 29.412928,68.928283 29.213791,68.982964 28.495929,69.136946 L 31.657041,66.759526 z" />
+    <g
+       id="g6698"
+       transform="matrix(1.3276166,0,0,1.3276166,-12.798791,-0.5324283)">
+      <g
+         id="g6695">
+        <rect
+           style="opacity:1;fill:#262729;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.5999999;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+           id="rect6687"
+           width="7.9568939"
+           height="5.3993211"
+           x="142.65575"
+           y="70.028343" />
+      </g>
+    </g>
+    <rect
+       style="opacity:1;fill:#262729;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.5999999;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect6691"
+       width="10.563704"
+       height="7.1682281"
+       x="176.96161"
+       y="111.34667" />
+    <rect
+       transform="scale(-1,-1)"
+       y="-119.28668"
+       x="-189.23497"
+       height="44.456402"
+       width="43.922855"
+       id="use6799"
+       style="fill:#e6e6e6;fill-opacity:1;stroke:url(#linearGradient6807);stroke-width:1.81947684;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:0.51569507" />
+    <use
+       x="0"
+       y="0"
+       xlink:href="#g6698"
+       id="use6801"
+       transform="translate(-9.8706315,-8.5367621)"
+       width="176"
+       height="128" />
+    <use
+       x="0"
+       y="0"
+       xlink:href="#rect6691"
+       id="use6803"
+       transform="translate(-9.8706315,-8.5367621)"
+       width="176"
+       height="128" />
+  </g>
+</svg>

=== added directory 'pixmaps/themes'
=== added directory 'pixmaps/themes/default'
=== added file 'pixmaps/themes/default/about.png'
Binary files pixmaps/themes/default/about.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/about.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/arrow_down.png'
Binary files pixmaps/themes/default/arrow_down.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/arrow_down.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/arrow_up.png'
Binary files pixmaps/themes/default/arrow_up.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/arrow_up.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/bug.png'
Binary files pixmaps/themes/default/bug.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/bug.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/close.png'
Binary files pixmaps/themes/default/close.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/close.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/donate.png'
Binary files pixmaps/themes/default/donate.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/donate.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/download.png'
Binary files pixmaps/themes/default/download.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/download.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/downloaded.png'
Binary files pixmaps/themes/default/downloaded.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/downloaded.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/error.png'
Binary files pixmaps/themes/default/error.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/error.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/find.png'
Binary files pixmaps/themes/default/find.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/find.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/get_updates.png'
Binary files pixmaps/themes/default/get_updates.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/get_updates.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/help.png'
Binary files pixmaps/themes/default/help.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/help.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/home.png'
Binary files pixmaps/themes/default/home.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/home.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/install.png'
Binary files pixmaps/themes/default/install.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/install.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/layout.png'
Binary files pixmaps/themes/default/layout.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/layout.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/new.png'
Binary files pixmaps/themes/default/new.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/new.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/open.png'
Binary files pixmaps/themes/default/open.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/open.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/options.png'
Binary files pixmaps/themes/default/options.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/options.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/package.png'
Binary files pixmaps/themes/default/package.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/package.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/plugin.png'
Binary files pixmaps/themes/default/plugin.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/plugin.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/plugin_add.png'
Binary files pixmaps/themes/default/plugin_add.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/plugin_add.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/plugin_disabled.png'
Binary files pixmaps/themes/default/plugin_disabled.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/plugin_disabled.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/project_details.png'
Binary files pixmaps/themes/default/project_details.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/project_details.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/quit.png'
Binary files pixmaps/themes/default/quit.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/quit.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/refresh.png'
Binary files pixmaps/themes/default/refresh.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/refresh.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/sources.png'
Binary files pixmaps/themes/default/sources.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/sources.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/translate.png'
Binary files pixmaps/themes/default/translate.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/translate.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/update.png'
Binary files pixmaps/themes/default/update.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/update.png	2010-01-06 01:45:26 +0000 differ
=== added file 'pixmaps/themes/default/uptodate.png'
Binary files pixmaps/themes/default/uptodate.png	1970-01-01 00:00:00 +0000 and pixmaps/themes/default/uptodate.png	2010-01-06 01:45:26 +0000 differ
=== added directory 'plugins'
=== added file 'plugins/ColorMap.py'
--- plugins/ColorMap.py	1970-01-01 00:00:00 +0000
+++ plugins/ColorMap.py	2010-01-06 01:45:26 +0000
@@ -0,0 +1,66 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import wx, os
+from lib import plugins, consts
+
+PLUGIN_NAME = 'ColorMap'
+PLUGIN_TYPE = 'Interface'
+PLUGIN_VERSION = '1.0'
+PLUGIN_AUTHOR = 'Chris Oliver <excid3@xxxxxxxxx>'
+
+class ColorMap(plugins.pluginBase):
+    def start(self):
+        self.pane = wx.Panel(self.app.notebook, -1, style=wx.TAB_TRAVERSAL) # Create a new pane
+        index = self.app.notebook.GetImageList().Add(wx.Bitmap(consts.icon_update)) # Add an icon for the tab
+
+        label_1 = wx.StaticText(self.pane, -1, " - Completely Updated")
+        bitmap_1 = wx.StaticBitmap(self.pane, -1, wx.Bitmap(consts.icon_uptodate))
+        label_2 = wx.StaticText(self.pane, -1, " - Has Updates")
+        bitmap_2 = wx.StaticBitmap(self.pane, -1, wx.Bitmap(consts.icon_update))  
+        label_3 = wx.StaticText(self.pane, -1, " - Downloaded")
+        bitmap_3 = wx.StaticBitmap(self.pane, -1, wx.Bitmap(consts.icon_downloaded))
+        label_4 = wx.StaticText(self.pane, -1, " - Newer Than Repository")
+        bitmap_4 = wx.StaticBitmap(self.pane, -1, wx.Bitmap(consts.icon_error))
+
+        # do layout
+        sizer_1 = wx.BoxSizer(wx.VERTICAL)
+        sizer_2 = wx.BoxSizer(wx.VERTICAL)
+
+        self.add(sizer_2, bitmap_1, label_1)        
+        self.add(sizer_2, bitmap_2, label_2)        
+        self.add(sizer_2, bitmap_3, label_3)        
+        self.add(sizer_2, bitmap_4, label_4)        
+
+        sizer_1.Add(sizer_2, 1, wx.ALIGN_CENTER_HORIZONTAL, 0)
+        self.pane.SetSizer(sizer_1)
+
+        # Add the pane
+        self.app.notebook.AddPage(self.pane, _("Color Map"), False, index) 
+
+    def add(self, sizer, bitmap, label):
+        sizer_1 = wx.BoxSizer(wx.HORIZONTAL)
+        sizer_1.Add(bitmap, 0, 0, 0)
+        sizer_1.Add(label, 0, 0, 0)
+        sizer.Add(sizer_1, 0, 0, 0)
+
+    def cleanup(self):
+        for i in range(self.app.notebook.GetPageCount()): # Find the page and select it
+            if self.app.notebook.GetPageText(i) == _("Color Map"):
+                self.app.notebook.RemovePage(i)
+                break

=== added file 'plugins/Debian.py'
--- plugins/Debian.py	1970-01-01 00:00:00 +0000
+++ plugins/Debian.py	2010-01-06 01:45:26 +0000
@@ -0,0 +1,697 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import commands, os, os.path, platform, gzip, lib
+from lib import plugins, consts, log
+
+PLUGIN_NAME = 'Debian'
+PLUGIN_TYPE = 'OS'
+PLUGIN_VERSION = '0.92.2'
+PLUGIN_AUTHOR = 'Chris Oliver <excid3@xxxxxxxxx>'
+
+FILE = 'debian.conf'
+
+class Debian(plugins.pluginBase):
+    def IsOS(self): # Returns bool if current OS has aptitude installed
+        if commands.getstatusoutput('aptitude --version')[0] == 0: return True
+        return False
+
+    def createProject(self, name): # Creates project files
+        dirNew = os.path.join(consts.dirProjects, name) # Create in projects directory
+
+        try:
+            # Set information
+            info = self.__setInfo()
+            self.__grabFiles(name, dirNew)
+
+            outfile = open(os.path.join(dirNew, FILE), 'wb')
+            outfile.write(_('Computer Name: ') + info[0] + '\n'
+                          + _('OS Name: ') + info[1] + '\n'
+                          + _('OS Version: ') + info[2] + '\n'
+                          + _('Architecture: ') + info[3] + '\n'
+                          + _('Kernel: ') + info[4] + '\n')
+            outfile.close()
+            return True
+        except:
+            log.error('Problem writing to project settings file')
+        return False
+
+    def loadProject(self, directory):
+        infile = open(os.path.join(directory, FILE), 'rb')
+        data = infile.read()
+        infile.close()
+        data = data.split()
+
+        return [data[2], data[5], data[8], data[10], data[12]]
+
+    def loadLocalPackageList(self, dir, arch):
+        listDir = os.path.join(dir, 'lists')
+        debs = self.__parseSources(dir)
+        filenames = self.__filesFromDebs(debs, arch)
+        installed = self.__getInstalled(dir)
+
+        # Initialize vars
+        packages = {}
+
+        for item in filenames:
+            try:
+                data = open(os.path.join(listDir, item), 'rb') # Open package list
+                packages = self.__readPackages(data, installed, packages, 'http://' + item.split('_dists')[0].replace('_','/')) # Append all packages to list
+                data.close()
+            except Exception, exc:
+                log.error(_('Unable to open file: ') + str(exc))
+
+
+
+
+#        for item in filenames:
+#            try:
+#                data = open(os.path.join(listDir,item), 'rb')
+#                packages.append(self.__readPackages(data, installed, 'http://' + item.split('_dists')[0].replace('_','/')))
+#                data.close()
+#                count += 1
+#            except Exception, exc:
+#                log.error(_("Unable to open file: ") + str(exc))
+
+        # Count packages
+#        total=0
+#        for item in packages: total += len(item)
+
+        # If no packages are found, see if we have package lists at least
+#        if total == 0:
+#            log.error(_('No packages found'))
+#            log.info(_('Loading any package lists possible'))
+#            for item in os.listdir(listDir):
+#                if item.endswith('Packages'):
+#                    try:
+#                        data = open(os.path.join(listDir, item), 'rb')
+#                        packages.append(self.__readPackages(data, installed, 'http://' + item.split('_dists')[0].replace('_','/')))
+#                        data.close()
+#                        count+=1
+#                    except Exception, exc:
+#                        log.error(_("Unable to open file: ") + str(exc))
+
+        return packages
+
+    def loadInternetPackageList(self, dir, arch):
+        listDir = os.path.join(dir, "lists")
+        debs = self.__parseSources(dir)
+        #filenames = self.__filesFromDebs(debs, arch, listDir)   #extracted locations resolved by downloader
+        #TODO: extract hashes for list files from Release files
+        # and 'return zip(urls, tempnames, checksums)' instead
+        tempnames = self.__tempFilesFromDebs(debs, arch, listDir)
+        urls = self.__urlsFromDebs(debs, arch)
+        return zip(urls, tempnames) # Returns urls, gzip file locations
+
+    def getDependencies(self, dir, allPackages, packageName):
+        # Recusive function, takes package name, returns package information for each dependency
+        urls = []
+#        return urls
+        if not allPackages.has_key(packageName): return {}
+        values = allPackages.get(packageName)
+        dependencies = values[5].split(", ")
+        dependencies += values[8].split(", ") # Apt-get considers Recommends as dependencies
+        dependencies += values[9].split(", ") # pre-depends are important too
+        filename = values[6].split("/") # Get the parts for the package filename
+        urls.append((values[6], os.path.join(dir, filename[len(filename)-1]), values[10]))
+        values[2] = values[3]
+        allPackages[packageName] = values
+
+        for item in dependencies:
+            data = item.split()
+            if not data == []:
+                # Get dependencies for this package too if it isnt already installed
+                if allPackages.has_key(data[0]) and allPackages.get(data[0])[2] == "":
+                    urls += self.getDependencies(dir, allPackages, data[0])
+
+        return urls
+
+    def getSources(self, dir):
+        """ Returns filename of main sources file """
+        return os.path.join(os.path.join(dir, 'sources'), 'sources.list')
+
+    def installCache(self, projdir, scriptname, move=False):
+        """ Transfers all downloaded packages to the OS cache. Uses sh script called as 'root'"""
+        scriptpath = os.path.join(projdir, scriptname+'.sh')
+        #slistsdir = os.path.join(projdir, 'lists')
+        spacksdir = os.path.join(projdir, 'packages')
+        #tlistsdir = '/var/lib/apt/lists'
+        #tpacksdir = '/var/cache/apt/archives'
+        bin = '#!/bin/sh -'
+        #slists = [x for x in os.listdir(slistsdir) if os.path.isfile(os.path.join(slistsdir, x)) and x.find("_dists_") != -1]
+        spacks = [x for x in os.listdir(spacksdir) if os.path.isfile(os.path.join(spacksdir, x)) and (os.path.splitext(x)[1] == '.deb')]
+        packnames = ' '.join([x[:x.find('_')] for x in spacks])
+        content = bin+"""\n#
+# Keryx 0.92.4 install script
+#
+#Used to transfer the necessary files back to a computer
+#from a project so that the downloaded packages can
+#be installed.
+#
+# Usage <script.sh> [<project directory>] ['-move']
+#
+# written by jacseen, class=amateur :)
+# http://keryxproject.org   mailto:keryx@xxxxxxxxxxxxxxxxxxx
+
+if [ -n "$1" ] && [ -e "$1" ]
+then
+    proj="$1"
+    shift
+else
+    proj="$(pwd)"
+fi
+cd "$proj"
+
+if [ -n "$1" ] && [ "$1" = "-move" ]
+then
+    transfer="mov"
+else
+    transfer="copy"
+fi
+
+slists=lists
+tlists=/var/lib/apt/lists
+spacks=packages
+tpacks=/var/cache/apt/archives
+ssources=sources
+tsources=/etc/apt
+
+#Find all index files, skipping the 'status' files and copy them
+cd ./"$slists"/
+if [ ! $? = 0 ] #if cannot cd into lists, not project dir
+then
+    echo "Not project dir: $(pwd)"
+    exit 65
+fi
+filelist=`find -maxdepth 1 -iname '*_dists_*'`
+
+#TODO:attain lock on folder $tlists to be package-manager-friendly
+# will be attained directly with python in later versions
+
+for fn in $filelist
+do
+    cp -t "$tlists" "$fn"
+    if [ ! $? = 0 ]
+    then
+        echo "Failure when copying list: $fn"
+        exit 66
+    fi
+done
+
+#TODO:release lock on folder $tlists
+
+#Find all downloaded packages and move to cache
+cd ../"$spacks"/
+filelist=`find -maxdepth 1 -name '*.deb'`
+
+#TODO:attain lock on folder $tpacks to be package-manager-friendly
+# will be attained directly with python in later versions
+
+for fn in $filelist
+do
+    if [ $transfer = "mov" ]
+    then
+        mv -f -t "$tpacks" "$fn"
+    else
+        cp -t "$tpacks" "$fn"
+    fi
+    if [ ! $? = 0 ]
+    then
+        echo "Failure when ${transfer}ing package: $fn"
+        exit 67
+    fi
+done
+
+#TODO:release lock on folder $tpacks
+
+#Update the main sources.list file in case it was changed in keryx
+
+cd ../"$ssources"/
+cp -t "$tsources" "sources.list"
+if [ ! $? = 0 ]
+then
+    echo "Failure when copying sources.list"
+    exit 68
+fi
+
+exit 0"""
+        try:
+            script = open(scriptpath, 'wb')
+            script.write(content)
+            script.close()
+        except:
+            log.error(_('installCache: Could not write the script ')+scriptpath)
+            return False
+
+        if move:
+            transfer='-move'
+        else:
+            transfer=''
+        log.info(_('installCache: launching script as root'))
+        run = self.__runRoot('sh', '%s %s %s' % (scriptpath,  projdir, transfer))
+        if run[0] != 0:
+            log.error('exit code:%i\n%s' % (run[0], run[1]))
+            log.info(_('installCache: failed'))
+            return False
+        log.info(_('installCache: transfer success, installing'))
+        run = self.__runRoot('apt-get', 'install %s <\\`tty\\`' % (packnames), term='xterm -hold -e')
+        if run[0] != 0:
+            log.error('exit code:%i\n%s' % (run[0], run[1]))
+            log.info(_('installCache: failed'))
+            return False
+        log.info(_('installCache: success'))
+        return True
+
+    def installRepo(self):
+        """ Transfers all downloaded packages into a Repository and updates the OS about it, then tells it to install them. Uses script called as 'root'"""
+        return True
+
+    def updateStatus(self, outdir, infile="/var/lib/dpkg/status"):
+        """Update the project's status file (list of installed packages)"""
+        import shutil
+        lists_dir = os.path.join(outdir, 'lists')
+        outfile = os.path.join(lists_dir, "status")
+        outfilebak = os.path.join(lists_dir, "status.bak")
+        # Back up the current status file.
+        run = self.__runRoot('cp', '%s %s' % (outfile, outfilebak))
+        # Copy in the new status file.
+        run = self.__runRoot('cp', '%s %s' % (infile, outfile))
+        #TODO: check for error from 'cp', return False
+        return True  # Everything went well.
+
+    def __readPackages(self, infile, installed, packages, mainUrl=''):
+        # up-to-date, name, installed ver, latest ver, descrip, depends, filename, size(int)
+        current = ['','','','','','','','','','',{}]
+
+        for line in infile:
+            if line.startswith("Package:"):     current[1] = line[9:-1]
+            if line.startswith("Version:"):     current[3] = line[9:-1]
+            if line.startswith("Description:"): current[4] = lib.utf(line[13:-1])
+            if line.startswith("Depends:"):     current[5] = line[9:-1]
+            if line.startswith("Filename:"):    current[6] = lib.joinUrl(mainUrl, line[10:-1])
+            if line.startswith("Size:"):        current[7] = int(line[6:-1])
+            if line.startswith("Recommends:"):  current[8] = line[13:-1]
+            if line.startswith("Pre-Depends:"): current[9] = line[13:-1]
+            if line.startswith("MD5sum:"):      current[10].update({'MD5sum':line[8:-1]})
+            if line.startswith("SHA1:"):        current[10].update({'SHA1':line[6:-1]})
+            if line.startswith("SHA256:"):      current[10].update({'SHA256':line[8:-1]})
+
+            if line.startswith("\n") and current[1] != '': # Finished reading this package, append it
+                self.__updatePackage(current, installed, packages) # Set the packages installed version
+                current = ['','','','','','','','','','',{}]
+
+        return packages
+
+    def __updatePackage(self, package, installed, packages):
+        """ Sets package information """
+        version = version_compare() # Initialize version comparison class
+
+        if packages.has_key(package[1]): # package already exists so update values if need be
+            if version.compare(packages[package[1]][3], package[3]) == 2: return # if its an older one, skip it
+
+        # Update installed version
+        for item in installed:
+            if package[1] == item[0]:
+
+                #Compare version numbers, set icon accordingly
+                # 0 # up-to-date
+                # 1 # update
+                # 2 # error
+                package[0] = version.compare(item[1], package[3])
+                package[2] = item[1] # Set the installed version
+
+        packages[package[1]] = package # Set package info
+
+    def __setInfo(self): # Sets the Debian project info
+        uname = platform.uname()
+        comp_name = uname[1]
+
+        os_arch = platform.architecture()[0]
+        os_kern = uname[2]
+        try:
+            status = commands.getstatusoutput('cat /etc/issue.net')
+            if status[0] != 0: log.error(_('Problem retrieving Debian version'))
+            temp = status[1].split()
+            os_name = temp[0]
+            os_ver = temp[1]
+        except:
+            os_name = os_ver = _('Unknown')
+        return [comp_name, os_name, os_ver, os_arch, os_kern]
+
+    def __grabFiles(self, name, folder): # Grabs files necessary for a Debian project
+        import shutil
+        dirLists = os.path.join(folder, 'lists')
+        dirSources = os.path.join(folder, 'sources')
+
+        try:    shutil.copytree('/etc/apt/', dirSources)
+        except: pass # Will always raise errors because some files are only readable by root
+        try:    shutil.copytree('/var/lib/apt/lists/', dirLists)
+        except: pass
+        shutil.copyfile('/var/lib/dpkg/status', os.path.join(dirLists,'status'))
+        shutil.copyfile('/var/lib/dpkg/status', os.path.join(dirLists,'status.bak'))
+
+    def __parseSources(self, dir): # Returns list of all deb entries for project
+        sourcesDir = os.path.join(dir, 'sources')
+        sourcesdDir = os.path.join(sourcesDir, 'sources.list.d')
+        sources = self.__parseFile(os.path.join(sourcesDir, 'sources.list'))
+        if os.path.exists(sourcesdDir):
+            sourcesd = os.listdir(sourcesdDir)
+            for item in sourcesd:
+                if item.endswith('.list'): sources += self.__parseFile(os.path.join(sourcesdDir, item))
+        return sources
+
+    def __parseFile(self, location): # Returns a sepcific file's deb entries
+        found = []
+        infile = open(location)
+        for line in infile:
+            if line.startswith('deb http://'): #TODO: Add support for more protocols
+                if line.endswith('\n'): found.append(line[:-1])
+                else:                   found.append(line)
+        return found
+
+    def __filesFromDebs(self, deblist, arch, dir=''): # Generates a list of files from deb entries
+        local = []
+        for item in deblist:
+            data = item.split()
+            try:
+                dtype = data[0]
+                url = data[1]
+                dist = data[2]
+                if len(data) == 3: pass #FIXME: Special case, append only the sections to the end
+                for section in data[3:]:
+                    if section.find('#') != -1: break # If a comment is encountered skip the line
+                    main = lib.joinUrl(lib.joinUrl(lib.joinUrl(url, 'dists'), dist), section)
+                    main = self.__appendArch(arch, main)
+                    main = main[7:-3].replace('/','_')
+                    local.append(os.path.join(dir, main)) # Strips unnecessary characters and appends to list
+            except: pass # Unable to parse deb entry
+        return local
+
+    def __tempFilesFromDebs(self, deblist, arch, dir=''): # Generates a list of files from deb entries
+        local = []
+        for item in deblist:
+            data = item.split()
+            try:
+                dtype = data[0]
+                url = data[1]
+                dist = data[2]
+                if len(data) == 3: pass #FIXME: Special case, append only the sections to the end
+                for section in data[3:]:
+                    if section.find('#') != -1: break # If a comment is encountered skip the line
+                    main = lib.joinUrl(lib.joinUrl(lib.joinUrl(url, 'dists'), dist), section)
+                    main = self.__appendArch(arch, main)
+                    main = main[7:].replace('/','_')
+                    local.append(os.path.join(dir, main)) # Strips unnecessary characters and appends to list
+            except: pass # Unable to parse deb entry
+        return local
+
+    def __urlsFromDebs(self, deblist, arch):
+        urls = []
+        for item in deblist:
+            data = item.split()
+            try:
+                dtype = data[0]
+                url = data[1]
+                dist = data[2]
+                if len(data) == 3: pass
+                for section in data[3:]:
+                    if section.find('#') != -1: break
+                    main = lib.joinUrl(lib.joinUrl(lib.joinUrl(url, 'dists'), dist), section)
+                    main = self.__appendArch(arch, main)
+                    urls.append(main)
+            except: pass
+        return urls
+
+
+    def __appendArch(self, arch, location): # Appends an architecture to a location
+        if arch == '32bit': return lib.joinUrl(location, 'binary-i386/Packages.gz')
+        elif arch == '64bit': return lib.joinUrl(location, 'binary-amd64/Packages.gz')
+        return location
+
+    def __getInstalled(self, dir): # Gets a list of installed packages
+        status = open(os.path.join(os.path.join(dir, 'lists'),'status'), 'rb')
+
+        installed = []
+        current = ['', '', ''] # name, version, status
+        for line in status:
+            if line.startswith('Package:'): current[0] = line[9:-1]
+            if line.startswith('Version:'): current[1] = line[9:-1]
+            if line.startswith('Status:'):  current[2] = line[8:-1]
+            if line.startswith('\n') and current[2] == 'install ok installed':
+                installed.append(current)
+                current = ['', '', '']
+
+        status.close()
+        return installed
+
+    def __runRoot(self, program, args, term=None):
+        root = ''
+        for a in ('gksu', 'gksudo', 'kdesudo'):
+            if commands.getstatusoutput('which '+a)[0] == 0:
+                root = a
+                break
+        if root == '': return (64, 'Could not find superuser access')
+        try:
+            if term:
+                exit = commands.getstatusoutput('%s "%s %s %s"' % (term, root, program, args))
+            else:
+                exit = commands.getstatusoutput('%s "%s %s"' % (root, program, args))
+        except:
+            exit = (64, 'Error spawning shell command')
+        return exit
+
+class version_compare(object):
+    def __init__(self):
+        pass
+
+    def compare(self, str1, str2):
+        version1 = version(str1)
+        version2 = version(str2)
+
+        ver_type = ["epoch", "upstream", "debian"]
+        test_type = [0, 2, 1]
+
+        parse1 = []
+        parse2 = []
+
+        version_list1 = [version1.epoch(), version1.upstream(), version1.debian_version()]
+        version_list2 = [version2.epoch(), version2.upstream(), version2.debian_version()]
+
+        for index in range(3):
+#            value = test_type[index] # The number scheme had to change because debian changes have priority over non-debian
+            equal = self.__compare_info(version_list1[index], version_list2[index], ver_type[index])
+            if equal != 0:
+                break
+
+        return equal
+
+    def __compare_info(self, string1, string2, ver_type):
+        equal = 0
+#        print string1,
+#        print "   ",
+#        print string2,
+#        print "    ",
+#        print ver_type
+        if string1 and string2: # Both strings contain a value
+            data = version_parse(string1)
+            parse1 = data.parse()
+            data = version_parse(string2)
+            parse2 = data.parse()
+
+            max = len(parse1)
+            if len(parse1) > len(parse2):
+                max = len(parse2)
+#            print parse1
+            for count in range(max):  # Go through the parsed list of the version number broken down by type
+                compare1 = parse1[count][1]
+                type1 = parse1[count][0]
+                compare2 = parse2[count][1]
+                type2 = parse2[count][0]
+#                print max,
+#                print "+_++_",
+#                print count,
+#                print ":> ",
+#                print compare1,
+#                print "----",
+#                print compare2
+#                print str(compare1).isalnum()
+#                print str(compare2).isalnum()
+                if type1 == "alpha"   and type2 == "alpha"     or \
+                   type1 == "num"     and type2 == "num"       or \
+                   type1 == "delimit" and type2 == "delimit":
+                    if compare1 < compare2:
+                        equal = 1
+                        break
+                    elif compare1 > compare2:
+                        equal = 2
+                        break
+                elif type1 == "alpha"   and type2 == "num"     or \
+                     type1 == "alpha"   and type2 == "delimit" or \
+                     type1 == "alpha"   and type2 == "tilde"   or \
+                     type1 == "num"     and type2 == "tilde"   or \
+                     type1 == "delimit" and type2 == "num"     or \
+                     type1 == "delimit" and type2 == "tilde":
+                    equal = 2
+                    break
+                elif type1 == "num"     and type2 == "alpha"   or \
+                     type1 == "num"     and type2 == "delimit" or \
+                     type1 == "tilde"   and type2 == "alpha"   or \
+                     type1 == "tilde"   and type2 == "num"     or \
+                     type1 == "tilde"   and type2 == "delimit" or \
+                     type1 == "delimit" and type2 == "alpha":
+                    equal = 1
+                    break
+                elif type1 == "tilde"   and type2 == "tilde":
+                    if len(str(compare1)) > len(str(compare2)):  # The more tilde characters, the less its value
+                        equal = 1
+                        break
+                    elif len(str(compare1)) < len(str(compare2)):
+                        equal = 2
+                        break
+            if equal == 0:
+                if len(parse1) > max:
+                    compare1 = parse1[max][1]
+                    type1 = parse1[max][0]
+#                    print compare1,
+#                    print type1
+                    if type1 == "num"   or \
+                       type1 == "alpha" or \
+                       type1 == "delimit":
+                        equal = 2
+                    elif type1 == "tilde":
+                        equal = 1
+                elif len(parse2) > max:
+#                    print compare2,
+#                    print type2
+                    compare2 = parse2[max][1]
+                    type2 = parse2[max][0]
+                    if type2 == "num"   or \
+                       type2 == "alpha" or \
+                       type2 == "delimit":
+                        equal = 1
+                    elif type1 == "tilde":
+                        equal = 2
+
+        elif ver_type == "epoch"  and string1 and not string2 or \
+             ver_type == "debian" and not string1 and string2:
+            equal = 1
+        elif ver_type == "debian" and string1 and not string2 or \
+             ver_type == "epoch"  and not string1 and string2:
+            equal = 2
+
+        return equal
+
+class version_parse(object):
+    def __init__(self, string):
+        self.string = string
+
+    def parse(self):
+        version_list = []
+
+        build_type = "" # Tracks the current string type (num, alpha, delimit, tilde)
+        string_val = ""
+
+        for char in self.string:
+            if self.__type_changed(build_type, char):
+                if build_type: # The build type is not empty (there is a string ready to be appended
+                    if string_val.isdigit():
+                        version_list.append([build_type, int(string_val)]) # Convert string to integer
+                        string_val = ""
+                    else:
+                        version_list.append([build_type, string_val])
+                        string_val = ""
+                build_type = self.__get_type(char)
+            string_val += char
+
+        if build_type:
+            if string_val.isdigit():
+                version_list.append([build_type, int(string_val)])
+            else:
+                version_list.append([build_type, string_val])
+
+        return version_list # retuns a list of [build_type, string_val]
+
+    def __type_changed(self, build_type, char):
+        ret_val = False
+
+        if (char.isdigit() and build_type != "num") or \
+           (char.isalpha() and build_type != "alpha") or \
+           (build_type == "num" and not char.isdigit()) or \
+           (build_type == "alpha" and not char.isalpha()) or \
+           (build_type == "tilde" and char != "~") or \
+           (build_type == "delimit" and (char == "~" or char.isdigit() or char.isalpha())):
+            ret_val = True
+
+        return ret_val
+
+    def __get_type(self, char):
+        ret_type = ""
+        if char.isalpha():
+            ret_type = "alpha"
+        elif char.isdigit():
+            ret_type = "num"
+        elif char == "~":
+            ret_type = "tilde"
+        else:
+            ret_type = "delimit"
+
+        return ret_type
+
+class version(object):
+    def __init__(self, ver_string):
+        self.version = ver_string
+        self.epoch_value = self.__get_epoch(self.version)
+        upstream_deb = self.__get_upstrdeb(self.version)
+        self.upstream_value = upstream_deb[0]
+        self.debver_value = upstream_deb[1]
+
+    def epoch(self):
+        return self.epoch_value
+
+    def upstream(self):
+        return self.upstream_value
+
+    def debian_version(self):
+        return self.debver_value
+
+    def __get_epoch(self, str1):
+        ret_epoch = []
+        epoch = str1.split(":")
+        if len(epoch) > 1:
+            ret_epoch = epoch[0]
+
+        return ret_epoch
+
+    def __get_upstrdeb(self, str1):
+        ver_list = []
+        version = str1.split("-")
+
+        debver = ""
+        upstream = ""
+
+        if len(version) > 1:
+            debver = version[len(version) - 1]
+            for index in range(len(version) - 1):
+                if index == 0:
+                    upstream = version[index]
+                else:
+                    upstream += "-" + version[index]
+        else:
+            upstream = str1
+
+        return [upstream, debver]

=== added file 'plugins/Search.py'
--- plugins/Search.py	1970-01-01 00:00:00 +0000
+++ plugins/Search.py	2010-01-06 01:45:26 +0000
@@ -0,0 +1,148 @@
+# -*- coding: utf-8 -*-
+#
+# Author: Chris Oliver (excid3@xxxxxxxxx)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Library General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+import wx, os
+from lib import consts, log, plugins, project
+
+PLUGIN_NAME = 'Search'
+PLUGIN_TYPE = 'Interface'
+PLUGIN_VERSION = '1.0'
+PLUGIN_AUTHOR = 'Chris Oliver <excid3@xxxxxxxxx>'
+
+class Search(plugins.pluginBase):
+    def start(self):
+        #self.pane = wx.Panel(self.app.notebook, -1, style=wx.TAB_TRAVERSAL) # Create a new pane
+        #index = self.app.notebook.GetImageList().Add(wx.Bitmap(consts.icon_find)) # Add an icon for the tab
+
+        #TODO: Advanced search menu entry
+        
+        #menubar = self.app.GetMenuBar()
+        #menuindex = menubar.FindMenu(_("&Edit"))
+        #self.menu = menubar.GetMenu(menuindex)
+        #self.editSearch = wx.MenuItem(self.menu, wx.NewId(), _("&Search\tCtrl-S"), _("Open search tab"), wx.ITEM_NORMAL)
+        #self.editSearch.SetBitmap(wx.Bitmap(consts.icon_find))
+        #self.menu.InsertItem(0, self.editSearch)
+        #self.separator = self.menu.InsertSeparator(1)
+
+        # Quick search in toolbar
+        self.quick_search = wx.SearchCtrl(self.app.buttonPanel, style=wx.TE_PROCESS_ENTER)
+        self.quick_search.ShowSearchButton(True)
+        self.quick_search.ShowCancelButton(True)
+        self.app.buttonPanel.GetSizer().Add(self.quick_search, 0, wx.ALIGN_CENTER_VERTICAL|wx.ALL, 3)
+        self.app.buttonPanel.Fit()
+        self.app.Bind(wx.EVT_TEXT, self.OnQuickSearch, self.quick_search)
+        self.app.Bind(wx.EVT_SEARCHCTRL_SEARCH_BTN, self.OnQuickSearch, self.quick_search)
+        self.app.Bind(wx.EVT_SEARCHCTRL_CANCEL_BTN, self.OnQuickCancel, self.quick_search)
+        
+        # Search in notebook page
+        #self.search = wx.SearchCtrl(self.pane, size=(200,-1), style=wx.TE_PROCESS_ENTER)
+        #self.search.ShowSearchButton(True)
+        #self.search.ShowCancelButton(True)
+
+        #sizer = wx.BoxSizer(wx.HORIZONTAL)
+        
+        #sizer_1 = wx.BoxSizer(wx.VERTICAL)
+        #static = wx.StaticText(self.pane, label=_("Press Enter to start search"))
+        #sizer_1.Add(static, 0, wx.ALL, 3)
+        #sizer_1.Add(self.search, 0, wx.ALL, 3)
+        #sizer.Add(sizer_1, 0, wx.ALIGN_CENTER, 0)
+
+        # Create checkboxes
+        #sb = wx.StaticBox(self.pane, -1, _("Included Results"))
+        #box = wx.StaticBoxSizer(sb, wx.VERTICAL)
+        #self.cbName = wx.CheckBox(self.pane, -1, _("Name"))
+        #self.cbName.SetValue(True)
+        #box.Add(self.cbName, 0, wx.ALL, 3)
+        #self.cbDesc = wx.CheckBox(self.pane, -1, _("Description"))
+        #self.cbDesc.SetValue(True)
+        #box.Add(self.cbDesc, 0, wx.ALL, 3)
+        #self.cbVer = wx.CheckBox(self.pane, -1, _("Version"))
+        #box.Add(self.cbVer, 0, wx.ALL, 3)
+
+        #sizer.Add(box, 0, wx.ALIGN_CENTER, 0)
+
+        #self.pane.SetSizer(sizer)
+        #self.app.notebook.AddPage(self.pane, _("Search"), False, index) # Add the pane
+
+        # Set event bindings
+        #self.app.Bind(wx.EVT_SEARCHCTRL_SEARCH_BTN, self.OnSearch, self.search)
+        #self.app.Bind(wx.EVT_SEARCHCTRL_CANCEL_BTN, self.OnCancel, self.search)
+        #self.app.Bind(wx.EVT_TEXT_ENTER, self.OnDoSearch, self.search)
+        #self.app.notebook.GetTopLevelParent().Bind(wx.EVT_MENU, self.OnSearchMenu, self.editSearch)
+
+#    def OnSearchMenu(self, evt):
+#        for i in range(self.app.notebook.GetPageCount()): # Find the page and select it
+#            if self.app.notebook.GetPageText(i) == _("Search"): self.app.notebook.SetSelection(i)
+
+#    def OnSearch(self, evt):
+#        self.OnDoSearch(None)
+            
+#    def OnCancel(self, evt):
+#        self.search.SetValue("")
+#        self.OnDoSearch(None)
+
+    def OnQuickCancel(self, evt):
+        self.quick_search.SetValue('')
+        self.OnQuickSearch(None)
+
+    def OnQuickSearch(self, evt):
+        value = str(self.quick_search.GetValue())
+        if value == "": self.app.list.SetMap(project.projects[len(project.projects) -1].packages) # Set full list
+        else: # partial list
+            dict = {}
+            for i in project.projects[0].packages.iteritems():
+                if (not i[0].find(value) == -1) or (not i[1][4].find(value) == -1) or (not i[1][2].find(value) == -1) or (not i[1][3].find(value) == -1): 
+                    dict[i[0]] = i[1] # Keep entry
+            self.app.list.SetMap(dict) # Show sorted list
+        self.app.list.SortListItems(1, 1)
+
+#    def OnDoSearch(self, evt):
+#        value = str(self.search.GetValue())
+#        if value == "": self.app.list.SetMap(project.projects[0].packages) # Set full list
+#        else: # partial list
+#            dict = {}
+            
+#            for i in project.projects[0].packages.iteritems():
+#                if (self.cbName.IsChecked() == True and not i[0].find(value) == -1) or (self.cbDesc.IsChecked() == True and not i[1][4].find(value) == -1) or (self.cbVer.IsChecked() == True and (not i[1][2].find(value) == -1 or not i[1][3].find(value) == -1)): 
+                # Found substring in key name
+                # Found substring in description
+                # Found substring in version
+#                    dict[i[0]] = i[1] # Keep entry
+                    
+#            self.app.list.SetMap(dict) # Show sorted list
+#        self.app.list.SortListItems(1, 1)
+            
+    def cleanup(self):
+        #self.editSearch.Destroy()
+        self.quick_search.Destroy()
+        #self.menu.DeleteItem(self.editSearch)
+        #self.menu.DeleteItem(self.separator)
+        #for i in range(self.app.notebook.GetPageCount()): # Find the page and select it
+        #    if self.app.notebook.GetPageText(i) == _("Search"):
+        #        self.app.notebook.RemovePage(i)
+        #        break
+
+
+#########################################               
+#            Gather with me             #
+#     With the death of your sons       #
+# Release your rage in this silent cage #
+#             Born of fits              #
+#         That engage outrage           #
+#                       -John Gleissner #
+#########################################

=== added directory 'projects'
=== added directory 'projects/jaunty-32-bit-default'
=== added file 'projects/jaunty-32-bit-default/debian.conf'
--- projects/jaunty-32-bit-default/debian.conf	1970-01-01 00:00:00 +0000
+++ projects/jaunty-32-bit-default/debian.conf	2010-01-06 01:45:26 +0000
@@ -0,0 +1,5 @@
+Computer Name: default
+OS Name: Ubuntu
+OS Version: 9.04
+Architecture: 32bit
+Kernel: 2.6.28-11-generic

=== added file 'projects/jaunty-32-bit-default/jaunty-32-bit.keryx'
--- projects/jaunty-32-bit-default/jaunty-32-bit.keryx	1970-01-01 00:00:00 +0000
+++ projects/jaunty-32-bit-default/jaunty-32-bit.keryx	2010-01-06 01:45:26 +0000
@@ -0,0 +1,2 @@
+jaunty-32-bit
+Debian

=== added directory 'projects/jaunty-32-bit-default/lists'
=== added file 'projects/jaunty-32-bit-default/lists/status'
--- projects/jaunty-32-bit-default/lists/status	1970-01-01 00:00:00 +0000
+++ projects/jaunty-32-bit-default/lists/status	2010-01-06 01:45:26 +0000
@@ -0,0 +1,15966 @@
+Package: tcpd
+Status: install ok installed
+Priority: important
+Section: net
+Installed-Size: 220
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: tcp-wrappers
+Version: 7.6.q-16
+Replaces: libwrap0 (<< 7.6-8)
+Depends: libc6 (>= 2.4), libwrap0 (>= 7.6-4~), debconf (>= 0.5) | debconf-2.0
+Description: Wietse Venema's TCP wrapper utilities
+ Wietse Venema's network logger, also known as TCPD or LOG_TCP.
+ .
+ These programs log the client host name of incoming telnet,
+ ftp, rsh, rlogin, finger etc. requests.
+ .
+ Security options are:
+  - access control per host, domain and/or service;
+  - detection of host name spoofing or host address spoofing;
+  - booby traps to implement an early-warning system.
+Original-Maintainer: Marco d'Itri <md@xxxxxxxx>
+
+Package: libtext-wrapi18n-perl
+Status: install ok installed
+Priority: required
+Section: perl
+Installed-Size: 68
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 0.06-6
+Depends: libtext-charwidth-perl
+Description: internationalized substitute of Text::Wrap
+ This module is a substitution for Text::Wrap, supporting
+ multibyte characters such as UTF-8, EUC-JP, and GB2312, fullwidth
+ characters such as east Asian characters, combining characters
+ such as diacritical marks and Thai, and languages which don't
+ use whitespaces between words such as Chinese and Japanese.
+ .
+ It provides wrap().
+Original-Maintainer: Anibal Monsalve Salazar <anibal@xxxxxxxxxx>
+Homepage: http://search.cpan.org/search?module=Text::WrapI18N
+
+Package: sane-utils
+Status: install ok installed
+Priority: optional
+Section: graphics
+Installed-Size: 580
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: sane-backends
+Version: 1.0.19-23ubuntu7
+Replaces: libsane (<< 1.0.11-4)
+Depends: adduser (>= 3.47), update-inetd (>= 4.31), libavahi-client3 (>= 0.6.16), libavahi-common3 (>= 0.6.16), libc6 (>= 2.4), libieee1284-3, libsane (>= 1.0.11-3), libusb-0.1-4 (>= 2:0.1.12), debconf (>= 0.5) | debconf-2.0
+Recommends: avahi-daemon
+Suggests: unpaper
+Conffiles:
+ /etc/sane.d/saned.conf f23816f975de2723bcefec66750cf1f5
+ /etc/default/saned d8049f8628d82ab09dfb6d0cc5a83ce7
+ /etc/init.d/saned fdc3ee401b6c9cba0e62e9f4fcce9af2
+Description: API library for scanners -- utilities
+ SANE stands for "Scanner Access Now Easy" and is an application
+ programming interface (API) that provides standardized access to any
+ raster image scanner hardware (flatbed scanner, hand-held scanner,
+ video- and still-cameras, frame-grabbers, etc.). The SANE standard is
+ free and its discussion and development are open to everybody. The
+ current source code is written to support several operating systems,
+ including GNU/Linux, OS/2, Win32 and various Unices and is available
+ under the GNU General Public License (commercial applications and
+ backends are welcome, too, however).
+ .
+ This package includes the command line frontend scanimage, the saned
+ server and the sane-find-scanner utility, along with their documentation.
+Homepage: http://www.sane-project.org
+Original-Maintainer: Julien BLACHE <jblache@xxxxxxxxxx>
+
+Package: jfsutils
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 1116
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.1.12-2
+Depends: libc6 (>= 2.4), libuuid1 (>= 1.15)
+Description: utilities for managing the JFS filesystem
+ Utilities for managing IBM's Journaled File System (JFS) under Linux.
+ .
+ IBM's journaled file system technology, currently used in IBM
+ enterprise servers, is designed for high-throughput server
+ environments, key to running intranet and other high-performance
+ e-business file servers.
+ .
+ The following utilities are available:
+ fsck.jfs - initiate replay of the JFS transaction log, and check and repair a
+ JFS formatted device.
+ logdump - dump a JFS formatted device's journal log.
+ logredo - "replay" a JFS formatted device's journal log.
+ mkfs.jfs - create a JFS formatted partition.
+ xchkdmp - dump the contents of a JFS fsck log file created with xchklog.
+ xchklog - extract a log from the JFS fsck workspace into a file.
+ xpeek - shell-type JFS file system editor.
+Original-Maintainer: Stefan Hornburg (Racke) <racke@xxxxxxxxxx>
+Homepage: http://jfs.sourceforge.net/
+
+Package: debconf
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 984
+Maintainer: Colin Watson <cjwatson@xxxxxxxxxx>
+Architecture: all
+Version: 1.5.26ubuntu3
+Replaces: debconf-tiny
+Provides: debconf-2.0
+Depends: debconf-i18n | debconf-english
+Pre-Depends: perl-base (>= 5.6.1-4)
+Recommends: apt-utils (>= 0.5.1)
+Suggests: debconf-doc, debconf-utils, whiptail | dialog | gnome-utils, libterm-readline-gnu-perl, libgnome2-perl, libqt-perl, libnet-ldap-perl, perl
+Conflicts: apt (<< 0.3.12.1), cdebconf (<< 0.96), debconf-tiny, debconf-utils (<< 1.3.22), dialog (<< 0.9b-20020814-1), menu (<= 2.1.3-1), whiptail (<< 0.51.4-11), whiptail-utf8 (<= 0.50.17-13)
+Conffiles:
+ /etc/debconf.conf 8c0619be413824f1fc7698cee0f23811
+ /etc/apt/apt.conf.d/70debconf 7e9d09d5801a42b4926b736b8eeabb73
+ /etc/bash_completion.d/debconf 8fa1862734fbe54d7178aaaa419f5a11
+Description: Debian configuration management system
+ Debconf is a configuration management system for debian packages. Packages
+ use Debconf to ask questions when they are installed.
+Original-Maintainer: Debconf Developers <debconf-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libpth20
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 188
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: pth
+Version: 2.0.7-12
+Depends: libc6 (>= 2.4)
+Description: The GNU Portable Threads
+ Pth is a very portable POSIX/ANSI-C based library for Unix platforms which
+ provides non-preemptive priority-based scheduling for multiple threads of
+ execution ("multithreading") inside server applications. All threads run in the
+ same address space of the server application, but each thread has its own
+ individual program-counter, run-time stack, signal mask and errno variable.
+Original-Maintainer: Daniel Baumann <daniel@xxxxxxxxxx>
+Homepage: http://www.gnu.org/software/pth/
+
+Package: xserver-common
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 156
+Maintainer: Ubuntu X-SWAT <ubuntu-x@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: xorg-server
+Version: 2:1.6.0-0ubuntu14
+Replaces: xserver-xorg-core (<< 2:1.5.2)
+Depends: x11-common
+Description: common files used by various X servers
+ This package provides files necessary for all X.Org based X servers.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libelf1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 140
+Maintainer: Ubuntu MOTU Developers <ubuntu-motu@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: elfutils
+Version: 0.131-4
+Depends: libc6 (>= 2.4)
+Description: library to read and write ELF files
+ The libelf1 package provides a shared library which allows reading and
+ writing ELF files on a high level.  Third party programs depend on
+ this package to read internals of ELF files.  The programs of the
+ elfutils package use it also to generate new ELF files.
+ .
+ This library is part of elfutils.
+Original-Maintainer: Kurt Roeckx <kurt@xxxxxxxxx>
+
+Package: memtest86+
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 388
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 2.11-3ubuntu1
+Suggests: hwtools, memtester, kernel-patch-badram, memtest86, grub2 (>= 1.95+20070515-1) | grub (>= 0.95+cvs20040624), mtools
+Conffiles:
+ /etc/grub.d/20_memtest86+ 0e3e78691b34b54d0f2d69374fa27bc0
+Description: thorough real-mode memory tester
+ Memtest86+ scans your RAM for errors.
+ .
+ This tester runs independently of any OS - it is run at computer
+ boot-up, so that it can test *all* of your memory.  You may want to
+ look at `memtester', which allows to test your memory within Linux,
+ but this one won't be able to test your whole RAM.
+ .
+ It can output a list of bad RAM regions usable by the BadRAM kernel
+ patch, so that you can still use you old RAM with one or two bad bits.
+ .
+ Memtest86+ is based on memtest86 3.0, and adds support for recent
+ hardware, as well as a number of general-purpose improvements,
+ including many patches to memtest86 available from various sources.
+ .
+ Both memtest86 and memtest86+ are being worked on in parallel.
+ .
+ A convenience script is also provided to make a grub-based floppy or
+ image.
+Homepage: http://www.memtest.org/
+Original-Maintainer: Yann Dirson <dirson@xxxxxxxxxx>
+
+Package: dash
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: shells
+Installed-Size: 224
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.5.4-12ubuntu2
+Depends: debianutils (>= 2.15)
+Pre-Depends: libc6 (>= 2.4)
+Description: POSIX-compliant shell
+ The Debian Almquist Shell (dash) is a lightweight POSIX-compliant shell
+ derived from ash.
+ .
+ It can be usefully installed as /bin/sh (because it executes scripts
+ faster than bash), or as the default shell for the superuser.  It
+ depends on fewer libraries than bash, and is therefore less likely to
+ be affected by an upgrade problem or a disk failure. It is also
+ useful for checking the POSIX compliance of scripts.
+Homepage: http://gondor.apana.org.au/~herbert/dash/
+Original-Maintainer: Gerrit Pape <pape@xxxxxxxxxxx>
+
+Package: libmagickcore1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 5928
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: imagemagick
+Version: 7:6.4.5.4.dfsg1-1ubuntu3
+Depends: libbz2-1.0, libc6 (>= 2.4), libdjvulibre21 (>= 3.5.21), libfreetype6 (>= 2.3.5), libgomp1 (>= 4.2.1), libgraphviz4 (>= 2.20.0), libice6 (>= 1:1.0.0), libilmbase6, libjasper1 (>= 1.900.1), libjpeg62, liblcms1 (>= 1.15-1), libltdl7 (>= 2.2.6a), libmagickwand1, libopenexr6 (>= 1.6.1), libpng12-0 (>= 1.2.13-4), libsm6, libtiff4, libwmf0.2-7 (>= 0.2.8.4), libx11-6, libxext6, libxml2 (>= 2.6.27), libxt6, zlib1g (>= 1:1.2.3.3.dfsg)
+Recommends: ghostscript, gsfonts
+Description: low-level image manipulation library
+ The MagickCore API is a low-level interface between the C programming language
+ and the ImageMagick image processing libraries and is recommended for
+ wizard-level programmers only. Unlike the MagickWand C API which uses only a
+ few opaque types and accessors, with MagickCore you almost exlusively access
+ the structure members directly.
+ .
+ This package contains the C libraries needed to run executables that make
+ use of MagickCore.
+Homepage: http://www.imagemagick.org/
+Original-Maintainer: ImageMagick Packaging Team <pkg-gmagick-im-team@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libart-2.0-2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 152
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libart-lgpl
+Version: 2.3.20-2
+Depends: libc6 (>= 2.4)
+Description: Library of functions for 2D graphics - runtime files
+ A library of functions for 2D graphics supporting a superset of the
+ PostScript imaging model, designed to be integrated with graphics, artwork,
+ and illustration programs. It is written in optimized C, and is fully
+ compatible with C++. With a small footprint of 10,000 lines of code, it is
+ especially suitable for embedded applications.
+Original-Maintainer: Ondřej Surý <ondrej@xxxxxxxxxx>
+
+Package: mktemp
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: utils
+Installed-Size: 64
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.5-9
+Pre-Depends: libc6 (>= 2.3.4)
+Description: tool for creating temporary files
+ This package provides a utility designed to make temporary
+ file handling in shell scripts simple and secure.
+Original-Maintainer: Clint Adams <schizo@xxxxxxxxxx>
+
+Package: shared-mime-info
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 3036
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.60-1
+Depends: libc6 (>= 2.3), libglib2.0-0 (>= 2.16.0), libxml2 (>= 2.6.27)
+Conflicts: libglib2.0-0 (<< 2.17.2), libgnomevfs2-0 (<< 1:2.24.0), nautilus (<< 2.24), tracker (<< 0.6.90)
+Description: FreeDesktop.org shared MIME database and spec
+ This is the shared MIME-info database from the X Desktop Group. It is required
+ by any program complying to the Shared MIME-Info Database spec, which is also
+ included in this package.
+ .
+ At this time ROX and GNOME use this database. KDE is expected to follow soon,
+ and hopefully others too.
+Original-Maintainer: Filip Van Raemdonck <mechanix@xxxxxxxxxx>
+
+Package: libmpfr1ldbl
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 612
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: mpfr
+Version: 2.4.0-1ubuntu3
+Replaces: libmpfr1
+Depends: libgmp3c2 (>= 4.2.dfsg-1), libc6 (>= 2.4)
+Conflicts: libgmp3 (<< 4.1.4-3), libmpfr1
+Description: multiple precision floating-point computation
+ MPFR provides a library for multiple-precision floating-point computation
+ with correct rounding.  The computation is both efficient and has a
+ well-defined semantics. It copies the good ideas from the
+ ANSI/IEEE-754 standard for double-precision floating-point arithmetic
+ (53-bit mantissa).
+ .
+ The home page is http://www.mpfr.org/.
+Original-Maintainer: Laurent Fousse <laurent@xxxxxxxxxx>
+
+Package: libxdmcp6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 76
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxdmcp
+Version: 1:1.0.2-3
+Depends: libc6 (>= 2.4)
+Description: X11 Display Manager Control Protocol library
+ This package provides the main interface to the X11 display manager control
+ protocol library, which allows for remote logins to display managers.
+ .
+ More information about X.Org can be found at:
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libgl1-mesa-dri
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 35988
+Maintainer: Ubuntu X-SWAT <ubuntu-x@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: mesa
+Version: 7.4-0ubuntu3
+Replaces: xlibmesa-dri (<< 1:7.0.0)
+Depends: libc6 (>= 2.4), libdrm-intel1 (>= 2.4.5), libdrm2 (>= 2.3.1), libexpat1 (>= 1.95.8), libgl1-mesa-glx (= 7.4-0ubuntu3)
+Pre-Depends: dpkg (>= 1.14.12ubuntu3)
+Suggests: libglide3
+Conflicts: xlibmesa-dri (<< 1:7.0.0)
+Description: A free implementation of the OpenGL API -- DRI modules
+ This version of Mesa provides GLX and DRI capabilities: it is capable of
+ both direct and indirect rendering.  For direct rendering, it can use DRI
+ modules from the libgl1-mesa-dri package to accelerate drawing.
+ .
+ This package does not include the OpenGL library itself, only the DRI
+ modules for accelerating direct rendering.
+ .
+ For a complete description of Mesa, please look at the
+ libgl1-mesa-swx11 package.
+ .
+ The tdfx DRI module needs libglide3 to enable direct rendering.
+Homepage: http://mesa3d.sourceforge.net/
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: nvidia-71-modaliases
+Status: install ok installed
+Priority: optional
+Section: restricted/misc
+Installed-Size: 56
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: nvidia-graphics-drivers-71
+Version: 71.86.08-0ubuntu1
+Description: Modaliases for the NVIDIA binary X.Org driver
+ The modaliases provide a list of pci id's which makes it possible to
+ detect the model of a graphic card.
+Original-Maintainer: Debian NVIDIA Maintainers <pkg-nvidia-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: coreutils
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: utils
+Installed-Size: 11084
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 6.10-6ubuntu1
+Replaces: debianutils (<= 2.3.1), dpkg (<< 1.13.2), fileutils, shellutils, stat, textutils
+Provides: fileutils, shellutils, textutils
+Pre-Depends: libacl1 (>= 2.2.11-1), libc6 (>= 2.7), libselinux1
+Conflicts: stat
+Description: The GNU core utilities
+ This package contains the essential basic system utilities.
+ .
+ Specifically, this package includes:
+ basename cat chgrp chmod chown chroot cksum comm cp csplit cut date dd df dir
+ dircolors dirname du echo env expand expr factor false fmt fold groups head
+ hostid id install join link ln logname ls md5sum mkdir mkfifo mknod mv nice nl
+ nohup od paste pathchk pinky pr printenv printf ptx pwd readlink rm rmdir
+ sha1sum seq shred sleep sort split stat stty sum sync tac tail tee test touch
+ tr true tsort tty uname unexpand uniq unlink users vdir wc who whoami yes
+Original-Maintainer: Michael Stone <mstone@xxxxxxxxxx>
+
+Package: cupsddk
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 632
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.2.3-5ubuntu1
+Depends: libc6 (>= 2.4), libcomerr2 (>= 1.01), libcups2 (>= 1.3.8), libgcc1 (>= 1:4.1.1), libgnutls26 (>= 2.4.0-0), libkrb53 (>= 1.6.dfsg.2), libstdc++6 (>= 4.1.1), zlib1g (>= 1:1.1.4), cupsddk-drivers
+Description: CUPS Driver Development Kit
+ The CUPS Driver Development Kit (DDK) provides a suite of
+ standard drivers, a PPD file compiler, and other utilities that
+ can be used to develop printer drivers for CUPS and other
+ printing environments.  CUPS provides a portable printing layer
+ for UNIX(r)-based operating systems.  The CUPS DDK provides the
+ means for mass-producing PPD files and drivers/filters for
+ CUPS-based printer drivers.
+ .
+ This package should be installed for creating PPD files and for
+  developing printer drivers.
+Original-Maintainer: Debian HPIJS and HPLIP maintainers <pkg-hpijs-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://www.cups.org/ddk/index.php
+
+Package: libsane
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 8780
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: sane-backends
+Version: 1.0.19-23ubuntu7
+Replaces: libsane-extras (<< 1.0.18.14)
+Depends: adduser (>= 3.47), udev (>= 0.88-1) | makedev (>= 2.3.1-58), libavahi-client3 (>= 0.6.16), libavahi-common3 (>= 0.6.16), libc6 (>= 2.4), libexif12, libgphoto2-2 (>= 2.4.0), libgphoto2-port0 (>= 2.4.0), libieee1284-3, libjpeg62, libtiff4, libusb-0.1-4 (>= 2:0.1.12)
+Suggests: hpoj, hplip, libsane-extras (>= 1.0.19.1), sane-utils (>= 1.0.19-23ubuntu7), avahi-daemon
+Conffiles:
+ /etc/sane.d/abaton.conf 51591e7ab98851effab49089323cb160
+ /etc/sane.d/agfafocus.conf f763f1f31d26507986aad58ca02f79f9
+ /etc/sane.d/apple.conf 602eda3ecedd81ef751d9241becb9142
+ /etc/sane.d/artec.conf 1b87eeb6069e6f5ac7b5f0cc4bf48083
+ /etc/sane.d/artec_eplus48u.conf 3672fe16e6b14a124ad74acd47941be9
+ /etc/sane.d/avision.conf ace6554933c43240c12b1fd56c38e398
+ /etc/sane.d/bh.conf ed8e137983ae58a7bf038180b29737bd
+ /etc/sane.d/canon.conf 4afe1a9ccf3c40ff7b667ac7dfb1de25
+ /etc/sane.d/canon630u.conf 5fae93df3328f1915e3d26f77a8c3b9d
+ /etc/sane.d/cardscan.conf c7dc4545531be434d6e126529f2c3a82
+ /etc/sane.d/coolscan.conf b5a49230bc9b80a4358d966255d4697a
+ /etc/sane.d/coolscan2.conf e9039d4f201acacca70e8964ec22ee70
+ /etc/sane.d/dc25.conf 0659d0dee2b39c585b6ebc682af0dbd9
+ /etc/sane.d/dmc.conf 0731b2373c97cc98c5c42dd56e7fb05c
+ /etc/sane.d/epjitsu.conf 12e7eac3961245329333e55349e04d2e
+ /etc/sane.d/epson.conf 318ed78f38b29c99e478cbc7efc8ff14
+ /etc/sane.d/epson2.conf fb0befe1041db6a1b6a0813c0c8fcf1c
+ /etc/sane.d/fujitsu.conf dadd07eb6394bbb3d2c4af60594b74ef
+ /etc/sane.d/genesys.conf 7aaf7732969e3445ec6a95e81f88239e
+ /etc/sane.d/gt68xx.conf 8a505a6137906110e7866b6e155d4667
+ /etc/sane.d/hp.conf 5328dfe188ece714bf9fdb7e26dc9d00
+ /etc/sane.d/hp3900.conf 253cc77f586f0e5c8674b571397f0183
+ /etc/sane.d/hp4200.conf 0656916d9805c3af1f81424354082501
+ /etc/sane.d/hp5400.conf 25848f289fb76aeb7f78e29ab323dbf8
+ /etc/sane.d/hs2p.conf a7b07bd2a66b8a562ccb64da03bd47da
+ /etc/sane.d/ibm.conf d5eab60adbaf729bb5bf781fc4c5409d
+ /etc/sane.d/leo.conf 008b9b3cad3c7073aa5331a453e68cd6
+ /etc/sane.d/lexmark.conf c04785d832c5ffd42a9fb5aedc0a2153
+ /etc/sane.d/ma1509.conf 73a9fd7af5924e04054f43e2708f5059
+ /etc/sane.d/matsushita.conf fe9a8941cd52c7e012724122d67a98e6
+ /etc/sane.d/microtek.conf 940c8db7e01ccaa6f2c5be2ca020ddf1
+ /etc/sane.d/microtek2.conf 75cb498c51441db57932a4895f7f0d96
+ /etc/sane.d/mustek.conf 33284fd785df74d394b9e30a4ec8283e
+ /etc/sane.d/mustek_usb.conf f4080c5eacaf30b4ed871a5330960696
+ /etc/sane.d/nec.conf 5eed67a9759c991553fa3055af023a33
+ /etc/sane.d/pie.conf 7bdb319bd61b19389e93ed85a1ed85d1
+ /etc/sane.d/plustek.conf f329323c5ed857873510e38233f1afcf
+ /etc/sane.d/ricoh.conf b1891143384a7308ec17d9e6ac836201
+ /etc/sane.d/s9036.conf 5eed67a9759c991553fa3055af023a33
+ /etc/sane.d/sceptre.conf 9d7e8954714b47042b849ddbd2530973
+ /etc/sane.d/sharp.conf d16cb589cdceb30d4523334063ddf040
+ /etc/sane.d/sm3840.conf 9b61359cbcc14b9be4d687b80b772bea
+ /etc/sane.d/snapscan.conf b349efcbcec257f5fca8372f1e47e7e0
+ /etc/sane.d/sp15c.conf 74fd71c4ea2c8c58bbaa2cecfee56f7c
+ /etc/sane.d/st400.conf febd1d7966858a4a0352a2fe2c1abfa0
+ /etc/sane.d/stv680.conf 1a5a8d37f0de964bab25b3908fa907d5
+ /etc/sane.d/tamarack.conf 93b1a500916dcfabd8a1c288029a5502
+ /etc/sane.d/teco1.conf 7976c7a3dd90fe100f30a23a29aaea89
+ /etc/sane.d/teco2.conf 1f873f79332e99cb0cd2b9eba938ac3b
+ /etc/sane.d/teco3.conf 7b632784a85ec6ead7d26e8fd195dea5
+ /etc/sane.d/test.conf eaccee9d3fb610a691705ddf94b9ec11
+ /etc/sane.d/u12.conf 9ab31cd28e79474973fc02ccf1c06b99
+ /etc/sane.d/umax.conf 5bcadfd7842926832de6d6e29d23558d
+ /etc/sane.d/umax_pp.conf 926aec7aab8c8a577016afe625a73d83
+ /etc/sane.d/umax1220u.conf 2d36f1f6c15bbfeaf2049d59dcfefe05
+ /etc/sane.d/plustek_pp.conf 327941a5240e699e3251d74192f4f299
+ /etc/sane.d/dc210.conf 821754802fb212acc9f48c7dd93ddaa1
+ /etc/sane.d/dc240.conf 821754802fb212acc9f48c7dd93ddaa1
+ /etc/sane.d/canon_pp.conf 2ecfac7c883bc980aba880f424abb8ad
+ /etc/sane.d/hpsj5s.conf 0e969889a4509e62ef352a0222d2620e
+ /etc/sane.d/mustek_pp.conf c9d10da50e4b77dcc73b97f67a81a89a
+ /etc/sane.d/dell1600n_net.conf ce26ec480900a2420d14d5f2c43f07eb
+ /etc/sane.d/gphoto2.conf ca55d23d02774d6eea321dcbd4099e5e
+ /etc/sane.d/qcam.conf 7a30e22cd391b7992646723df280f4fe
+ /etc/sane.d/v4l.conf c68d472ee915c19d73f255623f4e0223
+ /etc/sane.d/net.conf 9e5860565491b3157e3c6e0af682b7a2
+ /etc/sane.d/dll.conf 503416244f904d48cc3d7c9bfc0b254f
+Description: API library for scanners
+ SANE stands for "Scanner Access Now Easy" and is an application
+ programming interface (API) that provides standardized access to any
+ raster image scanner hardware (flatbed scanner, hand-held scanner,
+ video- and still-cameras, frame-grabbers, etc.). The SANE standard is
+ free and its discussion and development are open to everybody. The
+ current source code is written to support several operating systems,
+ including GNU/Linux, OS/2, Win32 and various Unices and is available
+ under the GNU General Public License (commercial applications and
+ backends are welcome, too, however).
+ .
+ This package includes the backends for many scanners. A libsane-extras
+ package containing some not-yet-included backends is available separately.
+ .
+ Graphical frontends for sane are available in the packages sane and
+ xsane. Command line frontend scanimage, saned and sane-find-scanner are
+ available in the sane-utils package.
+Homepage: http://www.sane-project.org
+Original-Maintainer: Julien BLACHE <jblache@xxxxxxxxxx>
+
+Package: sudo
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 428
+Maintainer: Martin Pitt <martin.pitt@xxxxxxxxxx>
+Architecture: i386
+Version: 1.6.9p17-1ubuntu3
+Replaces: sudo-ldap
+Depends: libc6 (>= 2.8), libpam0g (>= 0.99.7.1), libpam-modules
+Conflicts: sudo-ldap
+Conffiles:
+ /etc/pam.d/sudo 402488da83015090763d681fffae6340
+Description: Provide limited super user privileges to specific users
+ Sudo is a program designed to allow a sysadmin to give limited root
+ privileges to users and log root activity.  The basic philosophy is to give
+ as few privileges as possible but still allow people to get their work done.
+ .
+ This version is built with minimal shared library dependencies, use the
+ sudo-ldap package instead if you need LDAP support.
+Original-Maintainer: Bdale Garbee <bdale@xxxxxxx>
+
+Package: libfreetype6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 712
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: freetype
+Version: 2.3.9-4build1
+Replaces: freetype0, freetype1
+Depends: libc6 (>= 2.4), zlib1g (>= 1:1.1.4)
+Conflicts: freetype, xpdf-reader (<< 1.00-4)
+Description: FreeType 2 font engine, shared library files
+ The FreeType project is a team of volunteers who develop free,
+ portable and high-quality software solutions for digital typography.
+ They specifically target embedded systems and focus on bringing small,
+ efficient and ubiquitous products.
+ .
+ The FreeType 2 library is their new software font engine.  It has been
+ designed to provide the following important features:
+  * A universal and simple API to manage font files
+  * Support for several font formats through loadable modules
+  * High-quality anti-aliasing
+  * High portability & performance
+ .
+ Supported font formats include:
+  * TrueType files (.ttf) and collections (.ttc)
+  * Type 1 font files both in ASCII (.pfa) or binary (.pfb) format
+  * Type 1 Multiple Master fonts.  The FreeType 2 API also provides
+    routines to manage design instances easily
+  * Type 1 CID-keyed fonts
+  * OpenType/CFF (.otf) fonts
+  * CFF/Type 2 fonts
+  * Adobe CEF fonts (.cef), used to embed fonts in SVG documents with
+    the Adobe SVG viewer plugin.
+  * Windows FNT/FON bitmap fonts
+ .
+ This package contains the files needed to run programs that use the
+ FreeType 2 library.
+ .
+  Home Page: http://www.freetype.org/
+  Authors: David Turner   <david.turner@xxxxxxxxxxxx>
+           Robert Wilhelm <robert.wilhelm@xxxxxxxxxxxx>
+           Werner Lemberg <werner.lemberg@xxxxxxxxxxxx>
+Original-Maintainer: Steve Langasek <vorlon@xxxxxxxxxx>
+
+Package: debianutils
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: utils
+Installed-Size: 292
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 2.30ubuntu3
+Pre-Depends: libc6 (>= 2.4)
+Description: Miscellaneous utilities specific to Debian
+ This package provides a number of small utilities which are used
+ primarily by the installation scripts of Debian packages, although
+ you may use them directly.
+ .
+ The specific utilities included are: installkernel mkboot run-parts
+ savelog select-editor sensible-browser sensible-editor sensible-pager tempfile
+ which.
+Original-Maintainer: Clint Adams <schizo@xxxxxxxxxx>
+
+Package: libsysfs2
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 108
+Maintainer: Martin Pitt <martin.pitt@xxxxxxxxxx>
+Architecture: i386
+Source: sysfsutils
+Version: 2.1.0-5
+Depends: libc6 (>= 2.4)
+Description: interface library to sysfs
+ Sysfs is a virtual file system in Linux kernel 2.5+ that provides a
+ tree of system devices. libsysfs provides a stable programming
+ interface to sysfs and eases querying system devices and their
+ attributes.
+ .
+ The package sysfsutils contains frontend programs that use this
+ library. Development files and C examples are provided by the package
+ libsysfs-dev.
+Original-Maintainer: Martin Pitt <mpitt@xxxxxxxxxx>
+
+Package: openprinting-ppds
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 5444
+Maintainer: ubuntu-devel@xxxxxxxxxxxxxxxx
+Architecture: all
+Source: foomatic-db
+Version: 20090218-0ubuntu3
+Replaces: linuxprinting.org-ppds
+Provides: linuxprinting.org-ppds
+Suggests: cups | cupsys | foomatic-filters, foomatic-filters-ppds, hplip-ppds, openprinting-ppds-extra
+Conflicts: hp-ppd (<= 0.5), linuxprinting.org-ppds (<< 20080211-1)
+Description: OpenPrinting printer support - PostScript PPD files
+ This package includes a collection of free PostScript Printer Description
+ files for PostScript (and clone) printers from various manufacturers, as
+ distributed by OpenPrinting.
+ .
+ These are additional PostScript printer PPDs for not so common printers,
+ especially bigger high-end devices.
+ .
+ Some manufacturers distribute PPD files for their printers under
+ non-free licenses; those are not included in this package, but may be
+ available from the manufacturer's website or included on a CD or
+ other media with the printer.
+Homepage: http://www.openprinting.org/
+Original-Maintainer: Chris Lawrence <lawrencc@xxxxxxxxxx>
+
+Package: ecryptfs-utils
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 436
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 73-0ubuntu6
+Depends: libc6 (>= 2.8), libecryptfs0 (>= 48), libgcrypt11 (>= 1.4.0), libgpg-error0 (>= 1.4), libgpgme11 (>= 1.1.8), libkeyutils1, libpam0g (>= 0.99.7.1), libpam-runtime (>= 1.0.1-2ubuntu1), keyutils, libnss3-1d
+Suggests: opencryptoki, cryptsetup
+Description: ecryptfs cryptographic filesystem (utilities)
+ eCryptfs is a POSIX-compliant enterprise-class stacked cryptographic filesystem
+ for Linux.
+ .
+ It provides advanced key management and policy features. eCryptfs stores
+ cryptographic metadata in the header of each file written, so that encrypted
+ files can be copied between hosts; the file will be decryptable with the proper
+ key, and there is no need to keep track of any additional information aside
+ from what is already in the encrypted file itself. Think of eCryptfs as a sort
+ of "gnupgfs".
+ .
+ eCryptfs is a native Linux filesystem. The kernel module component of eCryptfs
+ is part of the Linux kernel since 2.6.19.
+ .
+ This package contains the userland utilities.
+Homepage: https://launchpad.net/ecryptfs
+Original-Maintainer: Daniel Baumann <daniel@xxxxxxxxxx>
+
+Package: language-pack-fr-base
+Status: install ok installed
+Priority: optional
+Section: translations
+Installed-Size: 10420
+Maintainer: Language pack maintainers <language-packs@xxxxxxxxxx>
+Architecture: all
+Version: 1:9.04+20090413
+Replaces: language-pack-fr (<< 1:9.04+20090413), language-pack-fr-base (<< 1:9.04+20090413), language-pack-gnome-fr-base (<< 1:9.04+20090413), language-pack-kde-fr-base (<< 1:9.04+20090413)
+Depends: locales (>= 2.3.6), language-pack-fr (>= 1:9.04+20090413)
+Pre-Depends: dpkg (>= 1.10.27ubuntu1)
+Suggests: language-support-fr
+Conflicts: language-pack-fr (<< 1:9.04+20090413)
+Description: translations for language French
+ Translation data for all supported packages for:
+ French
+ .
+ This package provides the bulk of translation data and is updated
+ only seldom. language-pack-fr provides frequent
+ translation updates, so you should install this as well.
+ .
+ Please note that you should install language-support-fr
+ to get full support for this language (spell checkers, OpenOffice
+ locale packages, etc.).
+
+Package: finger
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 76
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: bsd-finger
+Version: 0.17-12
+Replaces: netstd
+Depends: libc6 (>= 2.4)
+Description: user information lookup program
+ finger displays information about the system users.
+Original-Maintainer: Anibal Monsalve Salazar <anibal@xxxxxxxxxx>
+
+Package: libxml-parser-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 744
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 2.36-1.1build2
+Depends: perl (>= 5.10.0-10), perlapi-5.10.0, liburi-perl, libwww-perl, libc6 (>= 2.4), libexpat1 (>= 1.95.8)
+Description: Perl module for parsing XML files
+ This module provides ways to parse XML documents.  It is built on top
+ of XML::Parser::Expat, which is a lower level interface to James
+ Clark's expat library.  Each call to one of the parsing methods
+ creates a new instance of XML::Parser::Expat which is then used to
+ parse the document.  Expat options may be provided when the
+ XML::Parser object is created.  These options are then passed on to
+ the Expat object on each parse call.  They can also be given as extra
+ arguments to the parse methods, in which case they override options
+ given at XML::Parser creation time.
+ .
+ The behavior of the parser is controlled either by Style and/or
+ Handlers options, or by setHandlers method.  These all provide
+ mechanisms for XML::Parser to set the handlers needed by
+ XML::Parser::Expat.  If neither Style nor Handlers are specified,
+ then parsing just checks the document for being well-formed.
+ .
+ When underlying handlers get called, they receive as their first
+ parameter the Expat object, not the Parser object.
+Original-Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://www.libexpat.org/
+
+Package: libclass-accessor-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 112
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 0.31-2
+Depends: perl (>= 5.6.1-7)
+Description: Automated accessor generator
+ The Class::Accessor module automagically generates accessor/mutators
+ for your class.
+ .
+ Most of the time, writing accessors is an exercise in cutting and
+ pasting. If you make your module a subclass of Class::Accessor and
+ declare your accessor fields with mk_accessors() then you will find
+ yourself with a set of automatically generated accessors which can
+ even be customized.
+Original-Maintainer: Debian Perl Group <pkg-perl-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libxmuu1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 64
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxmu
+Version: 2:1.0.4-1
+Depends: libc6 (>= 2.7-1), libx11-6, x11-common
+Description: X11 miscellaneous micro-utility library
+ libXmuu provides a set of miscellaneous utility convenience functions for X
+ libraries to use.  It is a lighter version of libXmu that does not depend
+ on libXt or libXext; for more information on libXmu, see libxmu6.
+ .
+ More information about X.Org can be found at:
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: gdb
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 6204
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 6.8-3ubuntu2
+Depends: libc6 (>= 2.8~20080505), libexpat1 (>= 1.95.8), libncurses5 (>= 5.6+20071006-3), libreadline5 (>= 5.2)
+Suggests: gdb-doc
+Description: The GNU Debugger
+ GDB is a source-level debugger, capable of breaking programs at
+ any specific line, displaying variable values, and determining
+ where errors occurred. Currently, it works for C, C++, Fortran,
+ Modula 2 and Java programs. A must-have for any serious
+ programmer.
+Original-Maintainer: Daniel Jacobowitz <dan@xxxxxxxxxx>
+
+Package: initramfs-tools
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 404
+Maintainer: Ubuntu Kernel Team <kernel-team@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 0.92bubuntu29
+Provides: linux-initramfs-tool
+Depends: klibc-utils (>= 1.5.9-1), busybox-initramfs, cpio, module-init-tools, udev (>= 117-5), findutils (>= 4.2.24)
+Conffiles:
+ /etc/initramfs-tools/initramfs.conf eec5dbb69cee0bc2894cbd36b36bb821
+ /etc/initramfs-tools/update-initramfs.conf 25099e2e0961298b2772355149f9810d
+Description: tools for generating an initramfs
+ This package contains tools to create and boot an initramfs for packaged 2.6
+ Linux kernel. The initramfs is a gzipped cpio archive. At boot time, the
+ kernel unpacks that archive into RAM, mounts and uses it as initial root file
+ system. The mounting of the real root file system occurs in early user space.
+ klibc provides utilities to setup root. Having the root on EVMS, MD, LVM2,
+ LUKS or NFS is also supported.
+ Any boot loader with initrd support is able to load an initramfs archive.
+Original-Maintainer: Debian kernel team <debian-kernel@xxxxxxxxxxxxxxxx>
+
+Package: makedev
+Status: install ok installed
+Priority: required
+Section: admin
+Installed-Size: 148
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 2.3.1-88
+Depends: base-passwd (>= 3.0.4)
+Conflicts: udev (<= 0.024-7)
+Description: creates device files in /dev
+ The MAKEDEV executable is used to create device files, often in /dev.
+ .
+ Device files are special files through which applications can interact
+ with hardware.
+Original-Maintainer: Bdale Garbee <bdale@xxxxxxx>
+
+Package: python-usb
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 144
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: pyusb
+Version: 0.4.1-4ubuntu1
+Replaces: python-pyusb (<= 0.4.1-1)
+Depends: python (<< 2.7), python (>= 2.5), python-support (>= 0.7.1), libc6 (>= 2.3.6-6~), libusb-0.1-4 (>= 2:0.1.12)
+Conflicts: python-pyusb (<= 0.4.1-1)
+Description: USB interface for Python
+ PyUSB is a native Python module written in C (meanwhile, because the
+ next major version will use ctypes), that provides USB access for it.
+Original-Maintainer: Debian Python Modules Team <python-modules-team@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://pyusb.berlios.de/
+
+Package: laptop-detect
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 56
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.13.7ubuntu1
+Depends: dmidecode (>> 2.8-2)
+Description: attempt to detect a laptop
+ laptop-detect attempts to determine whether it is being run on a laptop or a
+ desktop and appraises its caller of this.
+Original-Maintainer: Otavio Salvador <otavio@xxxxxxxxxx>
+
+Package: wireless-crda
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 116
+Maintainer: Ubuntu Kernel Team <kernel-team@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.7
+Depends: udev
+Description: Wireless Central Regulatory Domain Agent
+ This package provides the CRDA agent for wireless drivers to
+ determine the regulatory domain channel and power settings.
+
+Package: libxml2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1636
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 2.6.32.dfsg-5ubuntu4
+Depends: libc6 (>= 2.4), zlib1g (>= 1:1.2.3.3.dfsg)
+Recommends: xml-core
+Conflicts: libxslt1.1 (<= 1.1.12-8)
+Description: GNOME XML library
+ XML is a metalanguage to let you design your own markup language.
+ A regular markup language defines a way to describe information in
+ a certain class of documents (eg HTML). XML lets you define your
+ own customized markup languages for many classes of document. It
+ can do this because it's written in SGML, the international standard
+ metalanguage for markup languages.
+ .
+ This package provides a library providing an extensive API to handle
+ such XML data files.
+Original-Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: x11-xkb-utils
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 464
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 7.4+1ubuntu2
+Replaces: setxkbmap, xbase-clients (<= 1:7.2.ds2-3), xkbcomp, xkbevd, xkbprint, xkbutils
+Depends: libc6 (>= 2.4), libsm6, libx11-6, libxaw7, libxkbfile1, libxmu6, libxt6, cpp
+Pre-Depends: x11-common (>= 1:7.0.0)
+Conflicts: setxkbmap, xkbcomp, xkbevd, xkbprint, xkbutils
+Description: X11 XKB utilities
+ xkbutils contains a number of client-side utilities for XKB, the X11
+ keyboard extension.
+ .
+ setxkbmap is a tool to query and change the current XKB map.
+ .
+ xkbbell generates a bell event through the keyboard.
+ .
+ xkbcomp is a tool to compile XKB definitions into map files the server
+ can use.
+ .
+ xkbevd is an experimental tool to listen for certain XKB events and execute
+ defined triggers when actions occur.
+ .
+ xkbprint is a tool to generate an image with the physical representation
+ of the keyboard as XKB sees it.
+ .
+ xkbvleds shows the changing status of keyboard LEDs.
+ .
+ xkbwatch shows the changing status of modifiers and LEDs.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: telnet
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 192
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: netkit-telnet
+Version: 0.17-36
+Replaces: netstd
+Provides: telnet-client
+Depends: netbase, libc6 (>= 2.8), libgcc1 (>= 1:4.1.1), libncurses5 (>= 5.6+20071006-3), libstdc++6 (>= 4.1.1)
+Description: The telnet client
+ The telnet command is used for interactive communication with another host
+ using the TELNET protocol.
+Original-Maintainer: Alberto Gonzalez Iniesta <agi@xxxxxxxxxxx>
+
+Package: login
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: admin
+Installed-Size: 2932
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: shadow
+Version: 1:4.1.1-6ubuntu6
+Replaces: manpages-de (<< 0.5-3), manpages-es-extra (<< 0.8a-15), manpages-fi (<< 0.2-4), manpages-fr (<< 1.64.0-1), manpages-hu (<< 20010119-5), manpages-it (<< 0.3.4-2), manpages-ja (<< 0.5.0.0.20050915-1), manpages-ko (<< 20050219-2), manpages-tr, manpages-zh
+Pre-Depends: libc6 (>= 2.4), libpam0g (>= 0.99.7.1), libpam-runtime, libpam-modules
+Conflicts: amavisd-new (<< 2.3.3-8), backupninja (<< 0.9.3-5), echolot (<< 2.1.8-4), gnunet (<< 0.7.0c-2), python-4suite (<< 0.99cvs20060405-1)
+Conffiles:
+ /etc/pam.d/login 8c37c620da35a112a7f0ec4f7ea3774e
+ /etc/pam.d/su 7309fb874571fe5447321b43448a50b3
+ /etc/login.defs d331f2feee26da5873db3fe69358a707
+ /etc/securetty 904295b02f9d245a00389abe3980ae6f
+Description: system login tools
+ These tools are required to be able to login and use your system. The
+ login program invokes your user shell and enables command execution. The
+ newgrp program is used to change your effective group ID (useful for
+ workgroup type situations). The su program allows changing your effective
+ user ID (useful being able to execute commands as another user).
+Homepage: http://pkg-shadow.alioth.debian.org/
+Original-Maintainer: Shadow package maintainers <pkg-shadow-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: gpgv
+Status: install ok installed
+Priority: important
+Section: utils
+Installed-Size: 308
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: gnupg
+Version: 1.4.9-3ubuntu1
+Replaces: gnupg (<< 1.4.5-2)
+Depends: libc6 (>= 2.4), zlib1g (>= 1:1.1.4)
+Suggests: gnupg
+Description: GNU privacy guard - signature verification tool
+ GnuPG is GNU's tool for secure communication and data storage.
+ .
+ gpgv is a stripped-down version of gnupg which is only able to check
+ signatures.  It is smaller than the full-blown gnupg and uses a
+ different (and simpler) way to check that the public keys used to
+ make the signature are trustworthy.
+Homepage: http://www.gnupg.org
+Original-Maintainer: Debian GnuPG-Maintainers <pkg-gnupg-maint@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: liblwres40
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 132
+Maintainer: LaMont Jones <lamont@xxxxxxxxxx>
+Architecture: i386
+Source: bind9
+Version: 1:9.5.1.dfsg.P2-1
+Replaces: libbind0
+Depends: libc6 (>= 2.4), libcap2 (>= 2.11), libxml2 (>= 2.6.27)
+Conflicts: libbind0
+Description: Lightweight Resolver Library used by BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server.  BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers the liblwres shared library used by BIND's daemons
+ and clients.
+
+Package: libgmp3c2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 508
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: gmp
+Version: 2:4.2.4+dfsg-2ubuntu1
+Replaces: libgmp3
+Depends: libc6 (>= 2.7)
+Conflicts: libgmp2 (<< 2.0.2-10), libgmp3
+Description: Multiprecision arithmetic library
+ GNU MP is a programmer's library for arbitrary precision
+ arithmetic (ie, a bignum package).  It can operate on signed
+ integer, rational, and floating point numeric types.
+ .
+ It has a rich set of functions, and the functions have a regular
+ interface.
+Homepage: http://gmplib.org/
+Original-Maintainer: Steve M. Robbins <smr@xxxxxxxxxx>
+
+Package: libdbus-1-3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 312
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: dbus
+Version: 1.2.12-0ubuntu2
+Depends: libc6 (>= 2.4)
+Recommends: dbus
+Conflicts: dbus (<< 0.60)
+Description: simple interprocess messaging system
+ D-Bus is a message bus, used for sending messages between applications.
+ Conceptually, it fits somewhere in between raw sockets and CORBA in
+ terms of complexity.
+ .
+ D-Bus supports broadcast messages, asynchronous messages (thus
+ decreasing latency), authentication, and more. It is designed to be
+ low-overhead; messages are sent using a binary protocol, not using
+ XML. D-Bus also supports a method call mapping for its messages, but
+ it is not required; this makes using the system quite simple.
+ .
+ It comes with several bindings, including GLib, Python, Qt and Java.
+ .
+ The daemon can be found in the dbus package.
+Homepage: http://dbus.freedesktop.org/
+Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libperl5.10
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1388
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: perl
+Version: 5.10.0-19ubuntu1
+Replaces: perl-base (<= 5.8.7-4)
+Depends: libc6 (>= 2.4), perl-base (= 5.10.0-19ubuntu1)
+Conflicts: libapache-mod-perl (<< 1.29.0.1-3)
+Description: Shared Perl library
+ This package is required by programs which embed a Perl interpreter to
+ ensure that the correct version of `perl-base' is installed.  It
+ additionally contains the shared Perl library on architectures where the
+ perl binary is linked to libperl.a (currently only i386, for performance
+ reasons).  In other cases the actual library is in the `perl-base' package.
+Original-Maintainer: Brendan O'Dea <bod@xxxxxxxxxx>
+
+Package: upstart-logd
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 100
+Maintainer: Scott James Remnant <scott@xxxxxxxxxx>
+Architecture: i386
+Source: upstart
+Version: 0.3.9-8
+Depends: libc6 (>= 2.4), upstart (= 0.3.9-8)
+Conffiles:
+ /etc/event.d/logd 473a282ed81dce21904fab6caa599b60
+Description: boot logging daemon
+ This package contains the logd daemon used by /sbin/init to log output
+ of jobs started with "console logged" in their definitions.
+
+Package: libvorbisfile3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 88
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libvorbis
+Version: 1.2.0.dfsg-3.1
+Replaces: libvorbis0 (<< 1.0.0)
+Depends: libc6 (>= 2.4), libvorbis0a (>= 1.2.0)
+Conflicts: libvorbis0 (<< 1.0.0)
+Description: The Vorbis General Audio Compression Codec
+ Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free,
+ general-purpose compressed audio format for audio and music at fixed
+ and variable bitrates from 16 to 128 kbps/channel.
+ .
+ The Vorbisfile library provides a convenient high-level API for decoding
+ and basic manipulation of all Vorbis I audio streams.
+Original-Maintainer: Debian Xiph.org Maintainers <pkg-xiph-maint@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: gettext-base
+Status: install ok installed
+Priority: standard
+Section: utils
+Installed-Size: 972
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: gettext
+Version: 0.17-6ubuntu2
+Replaces: gettext (<= 0.12.1-1)
+Provides: libasprintf0c2
+Depends: libc6 (>= 2.8), libgcc1 (>= 1:4.1.1), libstdc++6 (>= 4.1.1)
+Description: GNU Internationalization utilities for the base system
+ This package includes the gettext and ngettext programs which allow
+ other packages to internationalize the messages given by shell scripts.
+Original-Maintainer: Santiago Vila <sanvila@xxxxxxxxxx>
+
+Package: libflac8
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 384
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: flac
+Version: 1.2.1-1.2
+Replaces: libflac4 (= 1.1.1-1)
+Depends: libc6 (>= 2.7), libogg0 (>= 1.0rc3)
+Conflicts: libflac4 (= 1.1.1-1)
+Description: Free Lossless Audio Codec - runtime C library
+ FLAC stands for Free Lossless Audio Codec. Grossly oversimplified, FLAC is
+ similar to MP3, but lossless.  The FLAC project consists of:
+ .
+  * The stream format
+  * libFLAC, which implements a reference encoder, stream decoder, and file
+    decoder
+  * flac, which is a command-line wrapper around libFLAC to encode and decode
+    .flac files
+  * Input plugins for various music players (Winamp, XMMS, and more in the
+    works)
+ .
+ This package contains the runtime library libFLAC.
+Original-Maintainer: Joshua Kwan <joshk@xxxxxxxxxxxxxxx>
+
+Package: module-init-tools
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 320
+Maintainer: Scott James Remnant <scott@xxxxxxxxxx>
+Architecture: i386
+Version: 3.7~pre9-2
+Depends: libc6 (>= 2.8)
+Breaks: initramfs-tools (<< 0.92bubuntu23)
+Conffiles:
+ /etc/depmod.d/ubuntu.conf 7c8439ef36b12e5f226b5dbfa20b8c2d
+ /etc/modprobe.d/blacklist-ath_pci.conf d1da9bb08c2b0f56f3be93fd0e37946b
+ /etc/modprobe.d/blacklist-firewire.conf cb8a4c10a5dddd1d67092198b1ae415f
+ /etc/modprobe.d/blacklist-framebuffer.conf 00e1bbc5bf86fc109e152bc9677c511d
+ /etc/modprobe.d/blacklist-watchdog.conf 171bb9ccb2eaae983d0793ec99644d07
+ /etc/modprobe.d/blacklist.conf 2b272b3e6912e637ff6b59813b5a2adf
+ /etc/init.d/module-init-tools 07ebe33a0d76ae96bc4c64b939082821
+Description: tools for managing Linux kernel modules
+ This package contains a set of programs for loading, inserting, and
+ removing kernel modules for Linux (versions 2.5.48 and above).
+
+Package: libffi5
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 80
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libffi
+Version: 3.0.7-1ubuntu1
+Depends: libc6 (>= 2.4)
+Description: Foreign Function Interface library runtime
+ A foreign function interface is the popular name for the interface that
+ allows code written in one language to call code written in another
+ language.
+Original-Maintainer: Debian GCC Maintainers <debian-gcc@xxxxxxxxxxxxxxxx>
+
+Package: man-db
+Status: install ok installed
+Priority: important
+Section: doc
+Installed-Size: 2680
+Maintainer: Colin Watson <cjwatson@xxxxxxxxxx>
+Architecture: i386
+Version: 2.5.5-1build1
+Replaces: man, manpages-de (<< 0.5-4), nlsutils
+Provides: man, man-browser
+Depends: groff-base (>= 1.18.1.1-15), bsdmainutils, debconf (>= 1.2.0) | debconf-2.0, dpkg (>= 1.9.0), libc6 (>= 2.8), libgdbm3, zlib1g (>= 1:1.1.4)
+Suggests: groff, less, www-browser
+Conflicts: man, suidmanager (<< 0.50)
+Conffiles:
+ /etc/manpath.config 4b57fa5d088eadb0166430a6c004d827
+ /etc/cron.daily/man-db f0ee460b382f31d76813da3c68d5b7e5
+ /etc/cron.weekly/man-db abb6867338adafff84d4474adf36bbc1
+Description: on-line manual pager
+ This package provides the man command, the primary way of examining the
+ on-line help files (manual pages). Other utilities provided include the
+ whatis and apropos commands for searching the manual page database, the
+ manpath utility for determining the manual page search path, and the
+ maintenance utilities mandb, catman and zsoelim. man-db uses the groff
+ suite of programs to format and display the manual pages.
+Homepage: http://man-db.nongnu.org/
+
+Package: myspell-en-au
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 644
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: openoffice.org-en-au
+Version: 2.1-3.1
+Provides: myspell-dictionary, myspell-dictionary-en
+Depends: dictionaries-common (>= 0.10) | openoffice.org-updatedicts
+Conflicts: openoffice.org (<= 1.0.3-2)
+Description: English_australian dictionary for myspell
+ This is the English_australian dictionary for use with the myspell
+ spellchecker, which is currently used within OpenOffice.org and the
+ Mozilla spellchecker.
+Original-Maintainer: John Steele Scott <toojays@xxxxxxxxxxx>
+
+Package: localechooser-data
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 72
+Maintainer: Ubuntu Installer Team <ubuntu-installer@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: localechooser
+Version: 2.09ubuntu2
+Depends: iso-codes
+Breaks: system-config-kickstart (<< 2.5.20-0ubuntu17)
+Description: Lists of locales supported by the installer
+ This package contains lists of languages, countries, and locales supported
+ by the installer, for use by programs that create automatic installation
+ scripts.
+Original-Maintainer: Debian Install System Team <debian-boot@xxxxxxxxxxxxxxxx>
+
+Package: libcairo2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 836
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: cairo
+Version: 1.8.6-1ubuntu2
+Replaces: libcairo0.5.1, libcairo0.6.0, libcairo0.9.0, libcairo1
+Provides: libcairo
+Depends: libc6 (>= 2.4), libdirectfb-1.0-0, libfontconfig1 (>= 2.4.0), libfreetype6 (>= 2.3.5), libpixman-1-0 (>= 0.11.6), libpng12-0 (>= 1.2.13-4), libx11-6, libxcb-render-util0 (>= 0.2.1+git1), libxcb-render0, libxcb1 (>= 1.1.92), libxrender1, zlib1g (>= 1:1.1.4)
+Conflicts: libcairo1
+Description: The Cairo 2D vector graphics library
+ Cairo is a multi-platform library providing anti-aliased
+ vector-based rendering for multiple target backends. Paths consist
+ of line segments and cubic splines and can be rendered at any width
+ with various join and cap styles. All colors may be specified with
+ optional translucence (opacity/alpha) and combined using the
+ extended Porter/Duff compositing algebra as found in the X Render
+ Extension.
+ .
+ Cairo exports a stateful rendering API similar in spirit to the path
+ construction, text, and painting operators of PostScript, (with the
+ significant addition of translucence in the imaging model). When
+ complete, the API is intended to support the complete imaging model of
+ PDF 1.4.
+ .
+ This package contains the shared libraries.
+Homepage: http://cairographics.org/
+Original-Maintainer: Dave Beckett <dajobe@xxxxxxxxxx>
+
+Package: libhtml-format-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 152
+Maintainer: Ubuntu MOTU Developers <ubuntu-motu@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 2.04-2
+Depends: libfont-afm-perl (>= 1.17), libhtml-tree-perl (>= 3.15), perl (>= 5.6.0-16)
+Description: format HTML syntax trees into text, PostScript or RTF
+ The modules present in this package are:
+ .
+   HTML::Formatter - Base class for various formatters. Formatters
+         traverse a syntax tree and produce some textual output. None
+         of the current formatters handle tables or forms yet.
+ .
+   HTML::FormatText - Formatter that converts a syntax tree to plain
+         readable text.
+ .
+   HTML::FormatPS - Formatter that outputs PostScript code.
+ .
+   HTML::FormatRTF - Formatter that outputs Microsofts RTF Format.
+Original-Maintainer: Debian Perl Group <pkg-perl-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://search.cpan.org/dist/HTML-Format/
+
+Package: libgdbm3
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 88
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: gdbm
+Version: 1.8.3-4
+Depends: libc6 (>= 2.1.3)
+Description: GNU dbm database routines (runtime version)
+ GNU dbm ('gdbm') is a library of database functions that use extendible
+ hashing and works similarly to the standard UNIX 'dbm' functions.
+ .
+ The basic use of 'gdbm' is to store key/data pairs in a data file, thus
+ providing a persistent version of the 'dictionary' Abstract Data Type
+ ('hash' to perl programmers).
+Original-Maintainer: Anibal Monsalve Salazar <anibal@xxxxxxxxxx>
+Homepage: http://www.gnu.org/software/gdbm/gdbm.html
+
+Package: libexif12
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 792
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libexif
+Version: 0.6.16-2.1ubuntu1
+Depends: libc6 (>= 2.4)
+Description: library to parse EXIF files
+ Most digital cameras produce EXIF files, which are JPEG files with
+ extra tags that contain information about the image. The EXIF library
+ allows you to parse an EXIF file and read the data from those tags.
+Original-Maintainer: Frederic Peters <fpeters@xxxxxxxxxx>
+
+Package: xserver-xorg-video-v4l
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 136
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:0.2.0-1ubuntu5
+Replaces: xserver-xorg (<< 6.8.2-35), xserver-xorg-driver-v4l
+Provides: xserver-xorg-video-5
+Depends: libc6 (>= 2.4), xserver-xorg-core (>= 2:1.5.99.3)
+Conflicts: xserver-xorg-driver-v4l
+Description: X.Org X server -- Video 4 Linux display driver
+ This driver for the X.Org X server (see xserver-xorg for a further description)
+ uses the Video For Linux interface. It does not provide a graphics chip
+ driver, but instead registers a number of generic Xv adaptors which can be
+ used with any graphics chipset driver.
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This package is built from the X.org xf86-video-v4l driver module.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libgcrypt11
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 496
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.4.1-2ubuntu1
+Depends: libc6 (>= 2.4), libgpg-error0 (>= 1.4)
+Suggests: rng-tools
+Description: LGPL Crypto library - runtime library
+ libgcrypt contains cryptographic functions.  Many important free
+ ciphers, hash algorithms and public key signing algorithms have been
+ implemented:
+ arcfour, blowfish, cast5, DSA, DSA2, des, 3DES, elgamal, MD5, rijndael,
+ RMD160, RSA, SEED, SHA1, SHA-384, SHA-512, twofish, tiger.
+Original-Maintainer: Debian GnuTLS Maintainers <pkg-gnutls-maint@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: xcursor-themes
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 3848
+Maintainer: Ubuntu Core Developers <ubuntu-devel@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 1.0.1-5ubuntu1
+Replaces: xlibs-data (<< 6.8.2-35)
+Conflicts: xlibs-data (<< 6.8.2-35)
+Conffiles:
+ /etc/X11/cursors/core.theme 73cec8bd811379ca1a61cb240e96fb51
+ /etc/X11/cursors/handhelds.theme d8be9d15f982704d007d3ba3d8009f54
+ /etc/X11/cursors/redglass.theme d1e8adaca475bf4a4b295ca5407244fd
+ /etc/X11/cursors/whiteglass.theme f24b4a1b5e7754dbb60a831af8bc591a
+Description: Base X cursor themes
+ This package contains the base X cursor themes -- handhelds, redglass, and
+ whiteglass.  These themes used to be contained in the xlibs-data package.  They
+ are for use with the Xcursor library.
+ .
+ Please see libxcursor1 for more information.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: python-dbus
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 684
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: dbus-python
+Version: 0.83.0-1ubuntu1
+Replaces: python2.4-dbus
+Provides: python2.5-dbus, python2.6-dbus
+Depends: libc6 (>= 2.4), libdbus-1-3 (>= 1.1.1), libdbus-glib-1-2 (>= 0.71), libglib2.0-0 (>= 2.12.0), python (<< 2.7), python (>= 2.5), python-support (>= 0.7.1)
+Recommends: python-gobject | python-gtk (<< 2.10)
+Suggests: python-dbus-doc, python-dbus-dbg
+Conflicts: gajim (<< 0.11.1), gnome-osd (<< 0.12.0), python2.4-dbus
+Description: simple interprocess messaging system (Python interface)
+ D-Bus is a message bus, used for sending messages between applications.
+ Conceptually, it fits somewhere in between raw sockets and CORBA in
+ terms of complexity.
+ .
+ This package provides a Python interface to D-Bus.
+ .
+ See the dbus description for more information about D-Bus in general.
+Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+Python-Version: 2.5, 2.6
+
+Package: xserver-xorg-video-sis
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 688
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:0.10.1-1
+Replaces: xserver-xorg (<< 6.8.2-35), xserver-xorg-driver-sis
+Provides: xserver-xorg-video-5
+Depends: libc6 (>= 2.4), xserver-xorg-core (>= 2:1.5.99.901)
+Conflicts: xserver-xorg-driver-sis
+Description: X.Org X server -- SiS display driver
+ This package provides the driver for all SiS and XGI Volari cards.
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This package is built from the X.org xf86-video-sis driver module.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libsdl1.2debian
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 60
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libsdl1.2
+Version: 1.2.13-4ubuntu3
+Depends: libsdl1.2debian-alsa (= 1.2.13-4ubuntu3) | libsdl1.2debian-all (= 1.2.13-4ubuntu3) | libsdl1.2debian-esd (= 1.2.13-4ubuntu3) | libsdl1.2debian-oss (= 1.2.13-4ubuntu3) | libsdl1.2debian-nas (= 1.2.13-4ubuntu3) | libsdl1.2debian-pulseaudio (= 1.2.13-4ubuntu3)
+Description: Simple DirectMedia Layer
+ SDL is a library that allows programs portable low level access to
+ a video framebuffer, audio output, mouse, and keyboard.
+ .
+ This is just a dummy package. You also need one of the seven versions of
+ the library that this package depends on.
+ .
+ (Note: Updates from SDL CVS after the version release date are occasionally
+ factored into these packages).
+Original-Maintainer: Debian SDL packages maintainers <pkg-sdl-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libxinerama1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 60
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxinerama
+Version: 2:1.0.3-2
+Depends: libc6 (>= 2.1.3), libx11-6, libxext6
+Description: X11 Xinerama extension library
+ libXinerama provides an X Window System client interface to the XINERAMA
+ extension to the X protocol.
+ .
+ The Xinerama (also known as panoramiX) extension allows for multiple screens
+ attached to a single display to be treated as belonging together, and to give
+ desktop applications a better idea of the monitor layout.
+ .
+ More information about X.Org can be found at:
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: lzma
+Status: install ok installed
+Priority: required
+Section: base
+Installed-Size: 168
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 4.43-14ubuntu1
+Depends: libc6 (>= 2.4), libgcc1 (>= 1:4.1.1), libstdc++6 (>= 4.2.1)
+Description: Compression method of 7z format in 7-Zip program
+ LZMA is a compression algorithm, based on the famous Lempel Ziv
+ compression method.
+ .
+ The main characteristics of the algorithm are very good compression,
+ fast decompression, use of lot of RAM for compression and low usage of
+ RAM for decompression.
+ .
+ LZMA provides high compression ratio and very fast decompression, so it
+ is very suitable for embedded applications. For example, it can be used
+ for ROM (firmware) compression.
+ .
+ This package provides a gzip-like interface for the lzma program.
+Homepage: http://www.7-zip.org/sdk.htm
+Original-Maintainer: Mohammed Adnène Trojette <adn+deb@xxxxxxxx>
+
+Package: libuuid1
+Status: install ok installed
+Priority: required
+Section: libs
+Installed-Size: 112
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: e2fsprogs
+Version: 1.41.4-1ubuntu1
+Replaces: e2fsprogs (<< 1.34-1)
+Depends: passwd, libc6 (>= 2.4)
+Recommends: uuid-runtime
+Description: universally unique id library
+ libuuid generates and parses 128-bit universally unique id's (UUID's).
+ See RFC 4122 for more information.
+Original-Maintainer: Theodore Y. Ts'o <tytso@xxxxxxx>
+
+Package: ubiquity-ubuntu-artwork
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 832
+Maintainer: Ubuntu Installer Team <ubuntu-installer@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: ubiquity
+Version: 1.12.12
+Replaces: espresso-ubuntu-artwork, espresso-ubuntu-doc, ubiquity-ubuntu-doc, ubuntu-express-ubuntu-artwork, ubuntu-express-ubuntu-doc
+Provides: ubiquity-artwork-1.12.12
+Conflicts: espresso-ubuntu-artwork, espresso-ubuntu-doc, ubiquity-ubuntu-doc, ubuntu-express-ubuntu-artwork, ubuntu-express-ubuntu-doc
+Description: Ubuntu artwork for Ubiquity live installer
+ This package provides Ubuntu-themed user interface artwork, help files, and
+ user interface text for the Ubiquity live CD installer.
+
+Package: libtasn1-3
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 160
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.5-1
+Depends: libc6 (>= 2.4)
+Conflicts: libtasn1-2 (= 0.3.1-1)
+Description: Manage ASN.1 structures (runtime)
+ Manage ASN1 (Abstract Syntax Notation One) structures.
+ The main features of this library are:
+   * on-line ASN1 structure management that doesn't require any C code
+     file generation.
+   * off-line ASN1 structure management with C code file generation
+     containing an array.
+   * DER (Distinguish Encoding Rules) encoding
+   * no limits for INTEGER and ENUMERATED values
+ .
+ This package contains runtime libraries.
+Original-Maintainer: Debian GnuTLS Maintainers <pkg-gnutls-maint@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: lsb-base
+Status: install ok installed
+Priority: required
+Section: misc
+Installed-Size: 84
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: lsb
+Version: 3.2-20ubuntu4
+Replaces: lsb (<< 2.0-6), lsb-core (<< 2.0-6)
+Depends: sed, ncurses-bin
+Conflicts: lsb (<< 2.0-6), lsb-core (<< 2.0-6)
+Conffiles:
+ /etc/lsb-base-logging.sh dfdfa2fe5871f99130b78cfaa025984b
+Description: Linux Standard Base 3.2 init script functionality
+ The Linux Standard Base (http://www.linuxbase.org/) is a standard
+ core system that third-party applications written for Linux can
+ depend upon.
+ .
+ This package only includes the init-functions shell library, which
+ may be used by other packages' initialization scripts for console
+ logging and other purposes.
+Homepage: http://www.linux-foundation.org/en/LSB
+Original-Maintainer: Chris Lawrence <lawrencc@xxxxxxxxxx>
+
+Package: libcurl3-gnutls
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 408
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: curl
+Version: 7.18.2-8ubuntu4
+Replaces: libcurl4-gnutls
+Depends: libc6 (>= 2.4), libgcrypt11 (>= 1.4.0), libgnutls26 (>= 2.4.0-0), libidn11 (>= 0.5.18), libkrb53 (>= 1.6.dfsg.2), libldap-2.4-2 (>= 2.4.7), libtasn1-3 (>= 0.3.4), zlib1g (>= 1:1.1.4), ca-certificates
+Conflicts: libcurl4-gnutls
+Description: Multi-protocol file transfer library (GnuTLS)
+ libcurl is designed to be a solid, usable, reliable and portable
+ multi-protocol file transfer library.
+ .
+ SSL support is provided by GnuTLS.
+ .
+ This is the shared version of libcurl.
+Homepage: http://curl.haxx.se
+Original-Maintainer: Domenico Andreoli <cavok@xxxxxxxxxx>
+
+Package: fontconfig
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 304
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 2.6.0-1ubuntu12
+Replaces: fontconfig-config (<< 2.5.93-1)
+Depends: libc6 (>= 2.3.4), libfontconfig1 (>= 2.4.0), fontconfig-config
+Suggests: defoma (>= 0.7.0)
+Description: generic font configuration library - support binaries
+ Fontconfig is a font configuration and customization library, which
+ does not depend on the X Window System. It is designed to locate
+ fonts within the system and select them according to requirements
+ specified by applications.
+ .
+ Fontconfig is not a rasterization library, nor does it impose a
+ particular rasterization library on the application. The X-specific
+ library 'Xft' uses fontconfig along with freetype to specify and
+ rasterize fonts.
+ .
+ This package contains a program to maintain the fontconfig cache
+ (fc-cache), a sample program to list installed fonts (fc-list), a program
+ to test the matching rules (fc-match) and a program to dump the binary
+ cache files in string form (fc-cat). It also makes fonts managed by defoma
+ available to fontconfig applications.
+Original-Maintainer: Keith Packard <keithp@xxxxxxxxxx>
+
+Package: libjpeg62
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 196
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libjpeg6b
+Version: 6b-14
+Depends: libc6 (>= 2.6-1)
+Description: The Independent JPEG Group's JPEG runtime library
+ The Independent JPEG Group's JPEG library is a library for handling
+ JPEG files.
+ .
+ This package contains the shared library.
+Original-Maintainer: Bill Allombert <ballombe@xxxxxxxxxx>
+
+Package: cpp-4.3
+Status: install ok installed
+Priority: optional
+Section: interpreters
+Installed-Size: 7512
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: gcc-4.3
+Version: 4.3.3-5ubuntu4
+Depends: gcc-4.3-base (= 4.3.3-5ubuntu4), libc6 (>= 2.8), libgmp3c2, libmpfr1ldbl
+Suggests: gcc-4.3-locales (>= 4.3.3-1)
+Description: The GNU C preprocessor
+ A macro processor that is used automatically by the GNU C compiler
+ to transform programs before actual compilation.
+ .
+ This package has been separated from gcc for the benefit of those who
+ require the preprocessor but not the compiler.
+Original-Maintainer: Debian GCC Maintainers <debian-gcc@xxxxxxxxxxxxxxxx>
+
+Package: user-setup
+Status: install ok installed
+Priority: extra
+Section: admin
+Installed-Size: 428
+Maintainer: Ubuntu Installer Team <ubuntu-installer@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 1.23ubuntu20
+Depends: debconf (>= 0.5) | debconf-2.0, passwd, adduser
+Description: Set up initial user and password
+ This package creates an initial user, using the same code as is
+ responsible for creating the initial user in the installer. It is only
+ likely to be of any use if your system has no non-system users at all.
+Original-Maintainer: Debian Install System Team <debian-boot@xxxxxxxxxxxxxxxx>
+
+Package: procps
+Status: install ok installed
+Priority: required
+Section: admin
+Installed-Size: 732
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:3.2.7-11ubuntu2
+Replaces: bsdutils (<< 2.9x-1), watch
+Provides: watch
+Depends: libc6 (>= 2.4), libncurses5 (>= 5.6+20071006-3), lsb-base (>= 3.0-10)
+Recommends: psmisc
+Conflicts: libproc-dev (<< 1:1.2.6-2), pgrep (<< 3.3-5), procps-nonfree, w-bassman (<< 1.0-3), watch
+Conffiles:
+ /etc/sysctl.d/10-console-messages.conf 154f6f5c5810d10bb303fb6a8e907c6a
+ /etc/sysctl.d/10-network-security.conf 4ac7258f5336e7eeaf448c05ab668d3c
+ /etc/sysctl.d/README 8329d4633f8b0beac8946a65d70201f2
+ /etc/sysctl.conf 991252ca030a4790939cb6da915f4c3d
+ /etc/init.d/procps 8506d5e4f40af573f756c8c6b83dd200
+Description: /proc file system utilities
+ These are utilities to browse the /proc filesystem, which is not a real file
+ system but a way for the kernel to provide information about the status of
+ entries in its process table. (e.g. running, stopped or "zombie")
+ Both command line and full screen utilities are provided. Ncurses is needed
+ for the full screen utilities.  More information can be found at procps
+ website http://procps.sf.net/
+ .
+ This package includes the following utilities: top, uptime, tload,
+ free, vmstat, watch, skill, pmap, pgrep, slabtop and pwdx.
+Original-Maintainer: Craig Small <csmall@xxxxxxxxxx>
+
+Package: wpasupplicant
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 816
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.6.6-2ubuntu1
+Depends: libc6 (>= 2.4), libdbus-1-3 (>= 1.1.1), libpcsclite1 (>= 1.4.102), libreadline5 (>= 5.2), libssl0.9.8 (>= 0.9.8f-5), lsb-base (>= 3.0-6), adduser
+Suggests: wpagui, libengine-pkcs11-openssl
+Conffiles:
+ /etc/wpa_supplicant/ifupdown.sh d13811a3160e187efed1d55acf2e98e8
+ /etc/wpa_supplicant/functions.sh 112dbaedf5f99480d045249b2b1630aa
+ /etc/wpa_supplicant/action_wpa.sh 8b1408bfd5b68ed414c59c0ea91e1301
+ /etc/dbus-1/system.d/wpa_supplicant.conf 2ac04c9c799791b6bfc33320f25f7ed8
+ /etc/logrotate.d/wpa_action e89bd56990c96be8d081053026536fae
+ /etc/logrotate.d/wpa_supplicant 68db9675f51beafe81a91db13e591fdf
+ /etc/init.d/wpa-ifupdown 87ca34ea160f4d1bd9adb18999668c35
+Description: client support for WPA and WPA2 (IEEE 802.11i)
+ WPA and WPA2 are methods for securing wireless networks, the former
+ using IEEE 802.1X, and the latter using IEEE 802.11i. This software
+ provides key negotiation with the WPA Authenticator, and controls
+ association with IEEE 802.11i networks.
+Original-Maintainer: Debian/Ubuntu wpasupplicant Maintainers <pkg-wpa-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://w1.fi/wpa_supplicant/
+
+Package: nvidia-180-modaliases
+Status: install ok installed
+Priority: optional
+Section: restricted/misc
+Installed-Size: 76
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: nvidia-graphics-drivers-180
+Version: 180.44-0ubuntu1
+Description: Modaliases for the NVIDIA binary X.Org driver
+ The modaliases provide a list of pci id's which makes it possible to
+ detect the model of a graphic card.
+Original-Maintainer: Debian NVIDIA Maintainers <pkg-nvidia-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: language-pack-en
+Status: install ok installed
+Priority: optional
+Section: translations
+Installed-Size: 36
+Maintainer: Language pack maintainers <language-packs@xxxxxxxxxx>
+Architecture: all
+Version: 1:9.04+20090413
+Replaces: language-pack-en (<< 1:9.04+20090413), language-pack-en-base, language-pack-gnome-en (<< 1:9.04+20090413), language-pack-gnome-en-base (<< 1:9.04+20090413), language-pack-kde-en (<< 1:9.04+20090413), language-pack-kde-en-base (<< 1:9.04+20090413)
+Depends: language-pack-en-base (>= 1:9.04+20090413)
+Pre-Depends: dpkg (>= 1.10.27ubuntu1)
+Description: translation updates for language English
+ Translation data updates for all supported packages for:
+ English
+ .
+ language-pack-en-base provides the bulk of translation data
+ and is updated only seldom. This package provides frequent translation
+ updates.
+ .
+ Please note that you should install language-support-en
+ to get full support for this language.
+
+Package: language-pack-es
+Status: install ok installed
+Priority: optional
+Section: translations
+Installed-Size: 36
+Maintainer: Language pack maintainers <language-packs@xxxxxxxxxx>
+Architecture: all
+Version: 1:9.04+20090413
+Replaces: language-pack-es (<< 1:9.04+20090413), language-pack-es-base, language-pack-gnome-es (<< 1:9.04+20090413), language-pack-gnome-es-base (<< 1:9.04+20090413), language-pack-kde-es (<< 1:9.04+20090413), language-pack-kde-es-base (<< 1:9.04+20090413)
+Depends: language-pack-es-base (>= 1:9.04+20090413)
+Pre-Depends: dpkg (>= 1.10.27ubuntu1)
+Description: translation updates for language Spanish; Castilian
+ Translation data updates for all supported packages for:
+ Spanish; Castilian
+ .
+ language-pack-es-base provides the bulk of translation data
+ and is updated only seldom. This package provides frequent translation
+ updates.
+ .
+ Please note that you should install language-support-es
+ to get full support for this language.
+
+Package: dnsutils
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 368
+Maintainer: LaMont Jones <lamont@xxxxxxxxxx>
+Architecture: i386
+Source: bind9
+Version: 1:9.5.1.dfsg.P2-1
+Replaces: bind, bind9 (<< 1:9.1.0-3)
+Depends: libbind9-40 (= 1:9.5.1.dfsg.P2-1), libc6 (>= 2.4), libcap2 (>= 2.11), libdns45 (= 1:9.5.1.dfsg.P2-1), libisc45 (= 1:9.5.1.dfsg.P2-1), libisccfg40 (= 1:9.5.1.dfsg.P2-1), libkrb53 (>= 1.6.dfsg.2), liblwres40 (= 1:9.5.1.dfsg.P2-1), libssl0.9.8 (>= 0.9.8f-5), libxml2 (>= 2.6.27), bind9-host | host
+Suggests: rblcheck
+Conflicts: netstd (<< 2.00)
+Description: Clients provided with BIND
+ The Berkeley Internet Name Domain (BIND) implements an Internet domain
+ name server.  BIND is the most widely-used name server software on the
+ Internet, and is supported by the Internet Software Consortium, www.isc.org.
+ .
+ This package delivers various client programs related to DNS that are
+ derived from the BIND source tree.
+ .
+  - dig - query the DNS in various ways
+  - nslookup - the older way to do it
+  - nsupdate - perform dynamic updates (See RFC2136)
+
+Package: linux-image-2.6.28-11-generic
+Status: install ok installed
+Priority: optional
+Section: base
+Installed-Size: 93424
+Maintainer: Ubuntu Kernel Team <kernel-team@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: linux
+Version: 2.6.28-11.42
+Provides: fuse-module, ivtv-modules, kvm-api-4, linux-image, linux-image-2.6, ndiswrapper-modules-1.9, redhat-cluster-modules
+Depends: initramfs-tools (>= 0.36ubuntu6), coreutils | fileutils (>= 4.0), module-init-tools (>= 3.3-pre11-4ubuntu3), wireless-crda
+Pre-Depends: dpkg (>= 1.10.24)
+Recommends: grub | lilo (>= 19.1)
+Suggests: fdutils, linux-doc-2.6.28 | linux-source-2.6.28
+Conflicts: hotplug (<< 0.0.20040105-1)
+Description: Linux kernel image for version 2.6.28 on x86/x86_64
+ This package contains the Linux kernel image for version 2.6.28 on
+ x86/x86_64.
+ .
+ Also includes the corresponding System.map file, the modules built by the
+ packager, and scripts that try to ensure that the system is not left in an
+ unbootable state after an update.
+ .
+ Supports Generic processors.
+ .
+ Geared toward desktop systems.
+ .
+ You likely do not want to install this package directly. Instead, install
+ the linux-generic meta-package, which will ensure that upgrades work
+ correctly, and that supporting packages are also installed.
+
+Package: libspeex1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 260
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: speex
+Version: 1.2~rc1-1
+Depends: libc6 (>= 2.4)
+Suggests: speex
+Conflicts: asterisk (<= 1:1.4.18.1~dfsg-1), libiaxclient1 (<= 2.0.2-1), libmediastreamer0 (<= 2.1.0-1), libopal-2.2 (<= 2.2.11~dfsg1-3), libopal-2.2-develop (<= 2.2.11~dfsg1-3), libopal-2.2-ptrace (<= 2.2.11~dfsg1-3), libopal-2.2.0
+Description: The Speex codec runtime library
+ Speex is an audio codec especially designed for compressing voice at low
+ bit-rates for applications such as voice over IP (VoIP). In some senses,
+ it is meant to be complementary to the Vorbis codec which places a greater
+ emphasis on high-quality music reproduction.
+ .
+ This package provides the speex runtime library.
+Original-Maintainer: Debian VoIP Team <pkg-voip-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://www.speex.org/
+
+Package: mscompress
+Status: install ok installed
+Priority: extra
+Section: otherosfs
+Installed-Size: 80
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.3-3
+Depends: libc6 (>= 2.4)
+Description: Microsoft "compress.exe/expand.exe" compatible (de)compressor
+ This package contains two programs:
+ .
+  * msexpand which decompresses files compressed by the Microsoft
+    compress.exe utility (e.g. Win 3.x installation files);
+  * mscompress which compresses files using the LZ77 compression
+    algorithm.
+ .
+ Files can be decompressed using Microsoft expand.exe or msexpand(1).
+Original-Maintainer: Aurélien GÉRÔME <ag@xxxxxxxx>
+
+Package: python-minimal
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: python
+Installed-Size: 92
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: python-defaults
+Version: 2.6.2-0ubuntu1
+Replaces: python (<= 2.4-1)
+Depends: python2.6-minimal (>= 2.6.2), dpkg (>= 1.13.20)
+Recommends: python
+Conflicts: python (<= 2.4-1), python-central (<< 0.5.5)
+Description: A minimal subset of the Python language (default version)
+ This package contains the interpreter and some essential modules.  It's used
+ in the boot process for some basic tasks.
+ See /usr/share/doc/python-minimal/README.Debian for a list of the modules
+ contained in this package.
+Original-Maintainer: Matthias Klose <doko@xxxxxxxxxx>
+
+Package: libfuse2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 272
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: fuse
+Version: 2.7.4-1.1ubuntu4
+Depends: libc6 (>= 2.4)
+Suggests: fuse-utils
+Conflicts: fuse-utils (<< 2.7.4-1.1ubuntu4)
+Description: Filesystem in USErspace library
+ Simple interface for userspace programs to export a virtual
+ filesystem to the Linux kernel.
+ .
+ This package contains the files necessary to write applications in C
+ or C++ using fuse.
+Homepage: http://fuse.sourceforge.net/
+Original-Maintainer: Bartosz Fenski <fenio@xxxxxxxxxx>
+
+Package: apt-xapian-index
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 196
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 0.16
+Depends: python, python-xapian (>= 1.0.2), python-apt (>= 0.7.6), python-debian
+Conffiles:
+ /etc/cron.weekly/apt-xapian-index 95bc61b5bfbb80f3bac44fecdd059d8f
+Description: maintenance tools for a Xapian index of Debian packages
+ This package provides update-apt-xapian-index, a tool to maintan a Xapian
+ index of Debian package information in /var/lib/apt-xapian-index.
+ .
+ update-apt-xapian-index allows plugins to be installed in
+ /usr/share/apt-xapian-index to index all sorts of extra information, such as
+ Debtags tags, popcon information, package ratings and anything else that would
+ fit.
+ .
+ The index generated by update-apt-xapian-index is self-documenting, as it
+ contains an autogenerated README file with information on the index layout and
+ all the data that can be found in it.
+Original-Maintainer: Enrico Zini <enrico@xxxxxxxxxx>
+
+Package: ncurses-base
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: utils
+Installed-Size: 488
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: ncurses
+Version: 5.7+20090207-1ubuntu1
+Replaces: ncurses-term
+Provides: ncurses-runtime
+Depends: libncurses5
+Conflicts: ncurses, ncurses-runtime
+Conffiles:
+ /etc/terminfo/README 9d086188afcd9479ae96ff55dd6c1573
+Description: basic terminal type definitions
+ This package contains terminfo data files to support the most common types of
+ terminal, including ansi, dumb, linux, rxvt, screen, sun, vt100, vt102, vt220,
+ vt52, and xterm.
+Homepage: ftp://invisible-island.net/ncurses/
+Original-Maintainer: Daniel Baumann <daniel@xxxxxxxxxx>
+
+Package: ubiquity-casper
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 108
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: casper
+Version: 1.173
+Replaces: espresso-casper
+Depends: laptop-detect, sudo
+Conflicts: espresso-casper
+Enhances: ubiquity
+Description: Configuration hooks for live installer
+ This package provides hook scripts for the Ubiquity live installer that
+ repeat some pieces of configuration done by the live system boot process in
+ the system installed by Ubiquity.
+Tag: admin::boot, admin::filesystem, implemented-in::shell, protocol::smb, role::plugin, scope::utility, special::completely-tagged, works-with-format::iso9660
+
+Package: libpopt0
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 460
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: popt
+Version: 1.14-4
+Replaces: popt
+Depends: libc6 (>= 2.8~20080505)
+Conflicts: libpopt-dev (<= 1.4-1), popt, rpm (<= 4.0.2-3)
+Description: lib for parsing cmdline parameters
+ Popt was heavily influenced by the getopt() and getopt_long() functions,
+ but it allows more powerful argument expansion. It can parse arbitrary
+ argv[] style arrays and automatically set variables based on command
+ line arguments. It also allows command line arguments to be aliased via
+ configuration files and includes utility functions for parsing arbitrary
+ strings into argv[] arrays using shell-like rules.
+ .
+ This package contains the runtime library and locale data.
+Original-Maintainer: Paul Martin <pm@xxxxxxxxxx>
+Homepage: http://rpm5.org/
+
+Package: libpam0g
+Status: install ok installed
+Priority: required
+Section: libs
+Installed-Size: 244
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: pam
+Version: 1.0.1-9ubuntu1
+Replaces: libpam0g-util
+Depends: libc6 (>= 2.8), debconf (>= 0.5) | debconf-2.0, libpam-runtime
+Suggests: libpam-doc
+Conflicts: libpam, libpam0 (<= 0.56-2)
+Description: Pluggable Authentication Modules library
+ Contains the C shared library for Linux-PAM, a suite of shared
+ libraries that enable the local system administrator to choose how
+ applications authenticate users.  In other words, without rewriting
+ or recompiling a PAM-aware application, it is possible to switch
+ between the authentication mechanism(s) it uses.  One may entirely
+ upgrade the local authentication system without touching the
+ applications themselves.
+Homepage: http://pam.sourceforge.net/
+Original-Maintainer: Steve Langasek <vorlon@xxxxxxxxxx>
+
+Package: hpijs
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 1400
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: hplip
+Version: 3.9.2-3ubuntu4
+Replaces: hpijs-ppds (<< 2.6.10+1.6.10-1), hplip-ppds (<< 1.6.10-1)
+Depends: hplip (= 3.9.2-3ubuntu4), libc6 (>= 2.4), libdbus-1-3 (>= 1.0.2), libgcc1 (>= 1:4.1.1), libjpeg62, libsnmp15 (>= 5.4.1~dfsg), libssl0.9.8 (>= 0.9.8f-5), libstdc++6 (>= 4.1.1), libusb-0.1-4 (>= 2:0.1.12), ghostscript, cupsddk, foomatic-filters
+Suggests: hpijs-ppds (= 3.9.2-3ubuntu4), hplip-doc
+Description: HP Linux Printing and Imaging - gs IJS driver (hpijs)
+ This package contains an IJS printer driver for Ghostscript, which
+ adds support for most inkjet printers and some LaserJet printers
+ manufactured by HP.  It is also required for HPLIP fax support.
+ .
+ The Debian package of hpijs includes the so-called rss patch, to use
+ pure black ink instead of composite black in printers that don't do
+ color map conversion in firmware.
+ .
+ HPIJS can take advantage of Ghostscript IJS KRGB support when
+ available, to enhance black printing on printers that do color
+ map conversion in firmware and are thus not affected by the old
+ rss patch.
+ .
+ Users of the CUPS printing system are advised to also install the
+ hplip package, and use the hp CUPS backend to send data to the printer.
+ HPLIP supports USB, networked and parallel-port devices, and enables
+ extended HPIJS functionality such as border-less printing.
+ Selecting any hpijs ppd in CUPS will use hpijs automatically.
+ .
+ Users of spoolers other than CUPS with printers connected through USB or
+ parallel ports are advised to install the hpoj package.  Extended HPIJS
+ functionality will not be available.
+ .
+ HPIJS is meant to be used through the foomatic system (see the
+ foomatic-filters package).
+Original-Maintainer: Debian HPIJS and HPLIP maintainers <pkg-hpijs-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://hplip.sourceforge.net/
+
+Package: libpci3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 112
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: pciutils
+Version: 1:3.0.0-4ubuntu8
+Replaces: libpci2
+Provides: libpci2
+Depends: libc6 (>= 2.7), zlib1g (>= 1:1.1.4)
+Conflicts: libpci2
+Description: Linux PCI Utilities (shared library)
+ This package contains the shared library files.
+Homepage: http://atrey.karlin.mff.cuni.cz/~mj/pciutils.shtml
+Original-Maintainer: Anibal Monsalve Salazar <anibal@xxxxxxxxxx>
+
+Package: libusb-0.1-4
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 96
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libusb
+Version: 2:0.1.12-13
+Replaces: libusb0
+Depends: libc6 (>= 2.4)
+Conflicts: libccid (<< 0.9.2-3), libusb0
+Description: userspace USB programming library
+ Library for programming USB applications without the knowledge
+ of Linux kernel internals.
+Original-Maintainer: Aurelien Jarno <aurel32@xxxxxxxxxx>
+Homepage: http://www.linux-usb.org/
+
+Package: libpython2.6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2436
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: python2.6
+Version: 2.6.2-0ubuntu1
+Replaces: python2.6 (<< 2.6)
+Depends: python2.6 (= 2.6.2-0ubuntu1), libc6 (>= 2.4), zlib1g (>= 1:1.2.0)
+Description: Shared Python runtime library (version 2.6)
+ Version 2.6 of the high-level, interactive object oriented language,
+ includes an extensive class library with lots of goodies for
+ network programming, system administration, sounds and graphics.
+ .
+ This package contains the shared runtime library, normally not needed
+ for programs using the statically linked interpreter.
+Original-Maintainer: Matthias Klose <doko@xxxxxxxxxx>
+
+Package: libgpg-error0
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 200
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libgpg-error
+Version: 1.4-2ubuntu7
+Depends: libc6 (>= 2.6.1-1)
+Description: library for common error values and messages in GnuPG components
+ Library that defines common error values for all GnuPG
+ components.  Among these are GPG, GPGSM, GPGME, GPG-Agent, libgcrypt,
+ pinentry, SmartCard Daemon and possibly more in the future.
+Original-Maintainer: Jose Carlos Garcia Sogo <jsogo@xxxxxxxxxx>
+
+Package: psmisc
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 492
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 22.6-1
+Replaces: procps (<< 1:1.2)
+Depends: libc6 (>= 2.6.1-1), libncurses5 (>= 5.6)
+Description: Utilities that use the proc filesystem
+ This package contains three little utilities that use the proc FS:
+ .
+ `fuser' identifies processes using files (similar to Sun's or SGI's fuser).
+ `killall' kills processes by name, e.g. killall -HUP named. `pstree' shows
+ the currently running processes as a tree
+Original-Maintainer: Craig Small <csmall@xxxxxxxxxx>
+
+Package: ucf
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 256
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 3.0014
+Depends: debconf (>= 1.5.19), coreutils (>= 5.91)
+Conffiles:
+ /etc/ucf.conf 5565b8b26108c49ba575ba452cd69b3e
+Description: Update Configuration File: preserve user changes to config files.
+ Debian policy mandates that user changes to configuration files must be
+ preserved during package upgrades. The easy way to achieve this behavior
+ is to make the configuration file a 'conffile', in which case dpkg
+ handles the file specially during upgrades, prompting the user as
+ needed.
+ .
+ This is appropriate only if it is possible to distribute a default
+ version that will work for most installations, although some system
+ administrators may choose to modify it. This implies that the
+ default version will be part of the package distribution, and must
+ not be modified by the maintainer scripts during installation (or at
+ any other time).
+ .
+ This script attempts to provide conffile-like handling for files that
+ may not be labelled conffiles, and are not shipped in a Debian package,
+ but handled by the postinst instead. This script allows one to
+ maintain files in /etc, preserving user changes and in general
+ offering the same facilities while upgrading that dpkg normally
+ provides for 'conffiles'.
+ .
+ Additionally, this script provides facilities for transitioning a
+ file that had not been provided with conffile-like protection to come
+ under this schema, and attempts to minimize questions asked at
+ installation time. Indeed, the transitioning facility is better than the
+ one offered by dpkg while transitioning a file from a non-conffile to
+ conffile status.
+Original-Maintainer: Manoj Srivastava <srivasta@xxxxxxxxxx>
+
+Package: avahi-utils
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 184
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: avahi
+Version: 0.6.23-4ubuntu4
+Depends: avahi-daemon, libavahi-client3 (>= 0.6.16), libavahi-common3 (>= 0.6.22), libc6 (>= 2.4), libdbus-1-3 (>= 1.0.2), libgdbm3
+Description: Avahi browsing, publishing and discovery utilities
+ Avahi is a fully LGPL framework for Multicast DNS Service Discovery.
+ It allows programs to publish and discover services and hosts
+ running on a local network with no specific configuration.  For
+ example you can plug into a network and instantly find printers to
+ print to, files to look at and people to talk to.
+ .
+ This package contains several utilities that allow you to interact with
+ the Avahi daemon, including publish, browsing and discovering services.
+Homepage: http://avahi.org/
+Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: lftp
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 1548
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 3.7.8-1
+Depends: libc6 (>= 2.4), libgcc1 (>= 1:4.1.1), libgcrypt11 (>= 1.4.0), libgnutls26 (>= 2.4.0-0), libncurses5 (>= 5.6+20071006-3), libreadline5 (>= 5.2), libtasn1-3 (>= 0.3.4), zlib1g (>= 1:1.1.4), netbase
+Conffiles:
+ /etc/lftp.conf 20c4f3ff2e666b4e899a5e694330e3c7
+Description: Sophisticated command-line FTP/HTTP client programs
+ Lftp is a file retrieving tool that supports FTP, HTTP, FISH, SFTP, HTTPS
+ and FTPS protocols under both IPv4 and IPv6. Lftp has an amazing set of
+ features, while preserving its interface as simple and easy as possible.
+ .
+ The main two advantages over other ftp clients are reliability and ability
+ to perform tasks in background. It will reconnect and reget the file being
+ transferred if the connection broke. You can start a transfer in background
+ and continue browsing on the ftp site. It does this all in one process. When
+ you have started background jobs and feel you are done, you can just exit
+ lftp and it automatically moves to nohup mode and completes the transfers.
+ It has also such nice features as reput and mirror. It can also download a
+ file as soon as possible by using several connections at the same time.
+ .
+ Lftp can also be scriptable, it can be used to mirror sites, it lets you
+ copy files among remote servers (even between FTP and HTTP). It has an
+ extensive online help. It supports bookmarks, and connecting to several
+ ftp/http sites at the same time.
+ .
+ This package also includes lftpget - A simple non-interactive
+ tool for downloading files.
+ .
+ http://lftp.yar.ru/
+Original-Maintainer: Noèl Köthe <noel@xxxxxxxxxx>
+Homepage: http://lftp.yar.ru/
+
+Package: perl-modules
+Status: install ok installed
+Priority: standard
+Section: perl
+Installed-Size: 14520
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: perl
+Version: 5.10.0-19ubuntu1
+Replaces: libansicolor-perl, libarchive-tar-perl, libattribute-handlers-perl, libcgi-pm-perl, libcpan-plus-perl, libextutils-cbuilder-perl, libextutils-parsexs-perl, libfile-temp-perl, libi18n-langtags-perl, libio-zlib-perl, liblocale-codes-perl, liblocale-maketext-perl, liblocale-maketext-simple-perl, libmath-bigint-perl, libmodule-build-perl, libmodule-corelist-perl, libmodule-load-conditional-perl, libmodule-load-perl, libmodule-pluggable-perl, libnet-perl, libnet-ping-perl, libparams-check-perl, libpod-parser-perl, libpod-simple-perl, libtest-harness-perl, libtest-simple-perl, libversion-perl, podlators-perl
+Provides: libansicolor-perl, libarchive-tar-perl, libattribute-handlers-perl, libcgi-pm-perl, libcpan-plus-perl, libextutils-cbuilder-perl, libextutils-parsexs-perl, libfile-temp-perl, libi18n-langtags-perl, libio-zlib-perl, liblocale-codes-perl, liblocale-maketext-perl, liblocale-maketext-simple-perl, libmath-bigint-perl, libmodule-build-perl, libmodule-corelist-perl, libmodule-load-conditional-perl, libmodule-load-perl, libmodule-pluggable-perl, libnet-perl, libnet-ping-perl, libparams-check-perl, libpod-parser-perl, libpod-simple-perl, libtest-harness-perl, libtest-simple-perl, libversion-perl, podlators-perl
+Depends: perl (>= 5.10.0-1)
+Conflicts: libansicolor-perl (<< 1.10-1), libarchive-tar-perl (<= 1.38-2), libattribute-handlers-perl (<< 0.78.02-1), libcgi-pm-perl (<< 3.15-1), libcpan-plus-perl (<< 0.83.09-1), libextutils-cbuilder-perl (<< 0.21-1), libextutils-parsexs-perl (<= 2.18), libfile-temp-perl (<< 0.18), libi18n-langtags-perl (<< 0.35-1), libio-zlib-perl (<< 1.07-1), liblocale-codes-perl (<< 2.06.1-1), liblocale-maketext-perl (<< 1.08-1), liblocale-maketext-simple-perl (<< 0.18-1), libmath-bigint-perl (<< 1.77-1), libmodule-build-perl (<< 0.2808.1-1), libmodule-corelist-perl (<< 2.13-1), libmodule-load-conditional-perl (<< 0.22-1), libmodule-load-perl (<< 0.12-1), libmodule-pluggable-perl (<< 3.6-1), libnet-perl (<= 1:1.19-3), libnet-ping-perl (<< 2.31-1), libparams-check-perl (<< 0.26-1), libpod-parser-perl (<< 1.32-1), libpod-simple-perl (<< 3.05-2), libtest-harness-perl (<< 2.56-1), libtest-simple-perl (<< 0.62-1), libversion-perl (<< 1:0.7400-2), podlators-perl (<< 2.2.0)
+Conffiles:
+ /etc/perl/Net/libnet.cfg fb2946cae573b8ed3d654a180d458733
+Description: Core Perl modules
+ Architecture independent Perl modules.  These modules are part of Perl and
+ required if the `perl' package is installed.
+Original-Maintainer: Brendan O'Dea <bod@xxxxxxxxxx>
+
+Package: bsdutils
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: utils
+Installed-Size: 188
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: util-linux (2.14.2-1ubuntu4)
+Version: 1:2.14.2-1ubuntu4
+Depends: libc6 (>= 2.7)
+Recommends: bsdmainutils
+Description: Basic utilities from 4.4BSD-Lite
+ This package contains the bare minimum number of BSD utilities needed
+ to boot a Debian system: logger, renice, script, scriptreplay, and wall.
+ The remaining standard BSD utilities are provided by bsdmainutils.
+Original-Maintainer: LaMont Jones <lamont@xxxxxxxxxx>
+
+Package: xserver-xorg-video-apm
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 220
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:1.2.1-1
+Replaces: xserver-xorg (<< 6.8.2-35), xserver-xorg-driver-apm
+Provides: xserver-xorg-video-5
+Depends: libc6 (>= 2.4), xserver-xorg-core (>= 2:1.5.99.901)
+Conflicts: xserver-xorg-driver-apm
+Description: X.Org X server -- APM display driver
+ This package provides the driver for the Alliance Pro Motion family
+ of video cards; specifically, the 6420, 6422, AT24, AT25, and AT3D
+ cards.
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This package is built from the X.org xf86-video-apm driver module.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: policykit
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 408
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.9-2ubuntu1
+Depends: libc6 (>= 2.8), libdbus-1-3 (>= 1.0.2), libdbus-glib-1-2 (>= 0.71), libglib2.0-0 (>= 2.14.0), libpam0g (>= 0.99.7.1), libpolkit-dbus2 (>= 0.7), libpolkit-grant2 (>= 0.7), libpolkit2 (>= 0.8), adduser, consolekit, dbus
+Suggests: policykit-gnome
+Conffiles:
+ /etc/init.d/policykit 73e5b52f02b7c002c5c87f8a1275ec1a
+ /etc/pam.d/polkit 01dc501e2d43ffc9f76b338e24a55e80
+ /etc/dbus-1/system.d/org.freedesktop.PolicyKit.conf b1780b3743cbf5102be643ae86e5ad6e
+ /etc/PolicyKit/PolicyKit.conf 38b1918da7965c7837d3b15566e12a69
+Description: framework for managing administrative policies and privileges
+ PolicyKit is an application-level toolkit for defining and handling the policy
+ that allows unprivileged processes to speak to privileged processes.
+ .
+ It is a framework for centralizing the decision making process with respect to
+ granting access to privileged operations (like calling the HAL Mount() method)
+ for unprivileged (desktop) applications.
+Homepage: http://hal.freedesktop.org/docs/PolicyKit/
+Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: hicolor-icon-theme
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 1328
+Maintainer: Ubuntu Core Developers <ubuntu-devel@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 0.10-1ubuntu1
+Description: default fallback theme for FreeDesktop.org icon themes
+ This is the default fallback theme used by implementations of the
+ Freedesktop.org Icon Theme specification.
+Original-Maintainer: Ross Burton <ross@xxxxxxxxxx>
+
+Package: dvd+rw-tools
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 476
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 7.1-4
+Depends: libc6 (>= 2.4), libgcc1 (>= 1:4.1.1), libstdc++6 (>= 4.1.1), genisoimage
+Suggests: cdrskin
+Description: DVD+-RW/R tools
+ dvd+rw-tools makes it possible to burn DVD images created by dvdauthor or
+ genisoimage to DVD+R, DVD+RW, DVD-R, and DVD-RW disks, replacing
+ cdrecord-proDVD in many cases.
+ .
+ The package contains:
+ .
+   * growisofs to burn DVD images or create a data DVD on the fly
+   * dvd+rw-format to format a DVD+RW
+   * dvd+rw-mediainfo to give details about DVD disks
+ .
+ and some programs to control the write speed and obtain information from
+ DVD-RAM.
+Original-Maintainer: Daniel Baumann <daniel@xxxxxxxxxx>
+Homepage: http://fy.chalmers.se/~appro/linux/DVD+RW/
+
+Package: jockey-common
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 1520
+Maintainer: Martin Pitt <martin.pitt@xxxxxxxxxx>
+Architecture: all
+Source: jockey
+Version: 0.5-0ubuntu10
+Replaces: restricted-manager-core
+Provides: restricted-manager-core
+Depends: python (<< 2.7), python (>= 2.5), python-central (>= 0.6.11), python-xdg, python-xkit, python-dbus, python-apt, policykit
+Recommends: nvidia-common, fglrx-modaliases
+Conflicts: restricted-manager-core
+Conffiles:
+ /etc/logrotate.d/jockey-common c107621af3824d73d5de3cf36675f1a7
+ /etc/dbus-1/system.d/com.ubuntu.DeviceDriver.conf da2682593b0d4330c86ef9104d7b3333
+Description: user interface and desktop integration for driver management
+ Jockey provides a user interface for configuring third-party drivers,
+ such as the Nvidia and ATI fglrx X.org and various Wireless LAN
+ kernel modules.
+ .
+ This package contains the common data shared between the frontends.
+Python-Version: 2.5, 2.6
+
+Package: libpolkit-dbus2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 116
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: policykit
+Version: 0.9-2ubuntu1
+Depends: libc6 (>= 2.8), libdbus-1-3 (>= 1.0.2), libpolkit2 (>= 0.8), libselinux1 (>= 2.0.59)
+Description: library for accessing PolicyKit via D-Bus
+ PolicyKit is a toolkit for defining and handling the policy that
+ allows unprivileged processes to speak to privileged processes.
+ .
+ This package contains a helper library for obtaining seat, session
+ and caller information via D-Bus and ConsoleKit.
+Homepage: http://hal.freedesktop.org/docs/PolicyKit/
+Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libio-compress-base-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 228
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 2.015-1
+Depends: perl (>= 5.6.0-16)
+Description: Base Class for IO::Compress modules
+ This module is the base class for all IO::Compress and IO::Uncompress
+ modules. It is not intended for direct use in application code. Its sole
+ purpose is to be sub-classed by IO::Compress modules.
+Original-Maintainer: Debian Perl Group <pkg-perl-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://search.cpan.org/dist/IO-Compress-Base/
+
+Package: xserver-xorg-video-voodoo
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 112
+Maintainer: Ubuntu X-SWAT <ubuntu-x@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:1.2.0-1ubuntu1
+Replaces: xserver-xorg (<< 6.8.2-35), xserver-xorg-driver-voodoo
+Provides: xserver-xorg-video-5
+Depends: libc6 (>= 2.1.3), xserver-xorg-core (>= 2:1.5.99.3)
+Conflicts: xserver-xorg-driver-voodoo
+Description: X.Org X server -- Voodoo display driver
+ This package provides the driver for 3dfx Voodoo1 and Voodoo2 chipsets.
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This package is built from the X.org xf86-video-voodoo driver module.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libwbclient0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 176
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: samba
+Version: 2:3.3.2-1ubuntu3
+Replaces: likewise-open (<< 4.1.0.2956)
+Depends: libc6 (>= 2.8), libtalloc1
+Conflicts: likewise-open (<< 4.1.0.2956)
+Description: Samba winbind client library
+ Samba is an implementation of the SMB/CIFS protocol for Unix systems,
+ providing support for cross-platform file and printer sharing with
+ Microsoft Windows, OS X, and other Unix systems.
+ .
+ This package provides a library for client applications that interact
+ via the winbind pipe protocol with a Samba winbind server.
+Homepage: http://www.samba.org
+Original-Maintainer: Debian Samba Maintainers <pkg-samba-maint@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libpolkit-grant2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 108
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: policykit
+Version: 0.9-2ubuntu1
+Depends: libc6 (>= 2.8), libdbus-1-3 (>= 1.0.2), libglib2.0-0 (>= 2.12.0), libpolkit2 (>= 0.7)
+Description: library for obtaining privileges via PolicyKit
+ PolicyKit is a toolkit for defining and handling the policy that
+ allows unprivileged processes to speak to privileged processes.
+ .
+ This package contains a library for obtaining privileges via PolicyKit.
+Homepage: http://hal.freedesktop.org/docs/PolicyKit/
+Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: ttf-sazanami-mincho
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 10440
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: ttf-sazanami
+Version: 20040629-2ubuntu2
+Provides: ttf-japanese-mincho
+Depends: defoma
+Pre-Depends: dpkg (>= 1.14.12ubuntu3)
+Suggests: x-ttcidfont-conf, xserver-xorg | xfs (>= 4.0.2-1), fontconfig (>= 2.4.1.3)
+Conffiles:
+ /etc/defoma/hints/ttf-sazanami-mincho.hints ef591f4422539385afecfbce7d37f386
+Description: Sazanami Mincho Japanese TrueType font
+ ttf-sazanami-mincho is Japanese free Mincho TrueType font to alternate
+ with the ttf-kochi alternative font family in future.
+ .
+ The family of ttf-sazanami-* is automatically generated from Wadalab font
+ kit for making toward smooth and beautiful compared with the current free
+ Japanese TrueType fonts.  It has bitmap hinting information, so it's
+ beautiful and not jagged to display on the CRT/LCD.
+Homepage: http://sourceforge.jp/projects/efont/
+Original-Maintainer: GOTO Masanori <gotom@xxxxxxxxxx>
+
+Package: libxss1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 68
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxss
+Version: 1:1.1.3-1
+Depends: libc6 (>= 2.1.3), libx11-6, libxext6, x11-common
+Description: X11 Screen Saver extension library
+ libXss provides an X Window System client interface to the MIT-SCREEN-SAVER
+ extension to the X protocol.
+ .
+ The Screen Saver extension allows clients behaving as screen savers to
+ register themselves with the X server, to better integrate themselves with
+ the running session.
+ .
+ More information about X.Org can be found at:
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libxkbfile1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 196
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxkbfile
+Version: 1:1.0.5-1ubuntu2
+Depends: libc6 (>= 2.4), libx11-6
+Description: X11 keyboard file manipulation library
+ libxkbfile provides an interface to read and manipulate description files for
+ XKB, the X11 keyboard configuration extension.
+ .
+ More information about X.Org can be found at:
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libdirectfb-1.0-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1848
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: directfb
+Version: 1.0.1-11ubuntu1
+Depends: libc6 (>= 2.7), libsysfs2, libts-0.0-0 (>= 1.0)
+Description: direct frame buffer graphics - shared libraries
+ DirectFB is a graphics library which was designed with embedded systems
+ in mind. It offers maximum hardware accelerated performance at a minimum
+ of resource usage and overhead.
+Homepage: http://www.directfb.org/
+Original-Maintainer: Debian DirectFB Team <pkg-directfb-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: lsb-release
+Status: install ok installed
+Priority: extra
+Section: misc
+Installed-Size: 92
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: lsb
+Version: 3.2-20ubuntu4
+Depends: python
+Recommends: apt
+Suggests: lsb
+Description: Linux Standard Base version reporting utility
+ The Linux Standard Base (http://www.linuxbase.org/) is a standard
+ core system that third-party applications written for Linux can
+ depend upon.
+ .
+ The lsb-release command is a simple tool to help identify the Linux
+ distribution being used and its compliance with the Linux Standard Base.
+ LSB conformance will not be reported unless the required metapackages are
+ installed.
+ .
+ While it is intended for use by LSB packages, this command may also
+ be useful for programmatically distinguishing between a pure Debian
+ installation and derived distributions.
+Homepage: http://www.linux-foundation.org/en/LSB
+Original-Maintainer: Chris Lawrence <lawrencc@xxxxxxxxxx>
+Python-Version: current
+
+Package: ttf-arabeyes
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 6140
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 2.0-2
+Depends: defoma
+Conffiles:
+ /etc/defoma/hints/ttf-arabeyes.hints fed351b8aed81a0b3ac0b6ee4f2a283f
+Description: Arabeyes GPL TrueType Arabic fonts
+ This is a set of TrueType Arabic fonts released under the GNU
+ General Public License by the Arabeyes Project.
+Original-Maintainer: Mohammed Adnène Trojette <adn+deb@xxxxxxxx>
+Homepage: http://www.arabeyes.org/project.php?proj=Khotot
+
+Package: update-inetd
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 120
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 4.31
+Depends: debconf | debconf-2.0
+Conflicts: netbase (<< 4.27)
+Description: inetd configuration file updater
+ This package provides a program used by other packages to
+ automatically update /etc/inetd.conf, the configuration file shared
+ by all implementations of the Internet super-server.
+Original-Maintainer: Luk Claes <luk@xxxxxxxxxx>
+
+Package: ssl-cert
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 92
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 1.0.23ubuntu1
+Depends: debconf (>= 0.5) | debconf-2.0, openssl (>= 0.9.8g-9), adduser
+Description: simple debconf wrapper for OpenSSL
+ This package enables unattended installs of packages that
+ need to create SSL certificates.
+ .
+ It is a simple wrapper for OpenSSL's certificate request utility that
+ feeds it with the correct user variables.
+Original-Maintainer: Debian Apache Maintainers <debian-apache@xxxxxxxxxxxxxxxx>
+
+Package: xserver-xorg-video-s3virge
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 164
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:1.10.2-1
+Replaces: xserver-xorg (<< 6.8.2-35), xserver-xorg-driver-s3virge
+Provides: xserver-xorg-video-5
+Depends: libc6 (>= 2.1.3), xserver-xorg-core (>= 2:1.5.99.901)
+Conflicts: xserver-xorg-driver-s3virge
+Description: X.Org X server -- S3 ViRGE display driver
+ This package provides the driver for the S3 ViRGE and Trio3D family
+ of chipsets.  It does not support Trio64 or S3 96x cards; support for
+ these can be found in the xserver-xorg-video-s3 package.  Support for
+ S3 Savage chipsets can be found in xserver-xorg-video-savage.
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This package is built from the X.org xf86-video-s3virge driver module.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libc6-dev
+Status: install ok installed
+Priority: optional
+Section: libdevel
+Installed-Size: 13424
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: glibc
+Version: 2.9-4ubuntu6
+Replaces: man-db (<= 2.3.10-41), gettext (<= 0.10.26-1), ppp (<= 2.2.0f-24), libgdbmg1-dev (<= 1.7.3-24)
+Provides: libc-dev
+Depends: libc6 (= 2.9-4ubuntu6), linux-libc-dev
+Recommends: gcc | c-compiler
+Suggests: glibc-doc, manpages-dev
+Conflicts: libstdc++2.10-dev (<< 1:2.95.2-15), gcc-2.95 (<< 1:2.95.3-9), binutils (<< 2.17cvs20070426-1), libc-dev
+Description: GNU C Library: Development Libraries and Header Files
+ Contains the symlinks, headers, and object files needed to compile
+ and link programs which use the standard C library.
+Original-Maintainer: GNU Libc Maintainers <debian-glibc@xxxxxxxxxxxxxxxx>
+
+Package: libssl0.9.8
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 6680
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: openssl
+Version: 0.9.8g-15ubuntu3
+Depends: libc6 (>= 2.7), zlib1g (>= 1:1.1.4), debconf (>= 0.5) | debconf-2.0
+Conflicts: libssl, libssl096-dev (<< 0.9.6-2), openssl (<< 0.9.6-2), ssleay (<< 0.9.2b)
+Description: SSL shared libraries
+ libssl and libcrypto shared libraries needed by programs like
+ apache-ssl, telnet-ssl and openssh.
+ .
+ It is part of the OpenSSL implementation of SSL.
+Original-Maintainer: Debian OpenSSL Team <pkg-openssl-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libnm-util1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 296
+Maintainer: Ubuntu Core Dev Team <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: network-manager
+Version: 0.7.1~rc4.1.cf199a964-0ubuntu2
+Depends: libc6 (>= 2.4), libdbus-1-3 (>= 1.0.2), libdbus-glib-1-2 (>= 0.78), libglib2.0-0 (>= 2.16.0), libnspr4-0d (>= 4.7.3-0ubuntu1~), libnss3-1d (>= 3.12.2~rc1), libuuid1 (>= 1.36)
+Breaks: network-manager-gnome (<< 0.7~~), network-manager-kde (<< 1:0.2.3)
+Description: network management framework (shared library)
+ NetworkManager attempts to keep an active network connection available at all
+ times. It is intended only for the desktop use-case, and is not intended for
+ usage on servers. The point of NetworkManager is to make networking
+ configuration and setup as painless and automatic as possible.  If using DHCP,
+ NetworkManager is _intended_ to replace default routes, obtain IP addresses
+ from a DHCP server, and change nameservers whenever it sees fit.
+ .
+ This package contains a convenience library to ease the access to
+ NetworkManager.
+ .
+  Homepage: http://www.gnome.org/projects/NetworkManager/
+Original-Maintainer: Riccardo Setti <giskard@xxxxxxxxxx>
+
+Package: libparted1.8-10
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 460
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: parted
+Version: 1.8.8.git.2008.03.24-11.1ubuntu6
+Replaces: libparted0, libparted1, libparted1.4 (<< 1.4.24-2), libparted2
+Provides: libparted
+Depends: libc6 (>= 2.8), libdevmapper1.02.1 (>= 2:1.02.20), libuuid1 (>= 1.05)
+Suggests: parted | nparted, libparted1.8-dev, libparted1.8-i18n (= 1.8.8.git.2008.03.24-11.1ubuntu6)
+Conflicts: libparted0, libparted1, libparted2, parted (<< 1.4.13+14pre1)
+Description: The GNU Parted disk partitioning shared library
+ GNU Parted is a program that allows you to create, destroy,
+ resize, move and copy hard disk partitions. This is useful
+ for creating space for new operating systems, reorganising
+ disk usage, and copying data to new hard disks. This package
+ contains the Parted binary and manual page.
+ .
+ This package contains libparted, the required shared library
+ used by Parted.
+ .
+ Parted currently supports DOS, Mac, Sun, BSD, GPT, MIPS and
+ PC98 disklabels/partition tables, as well as a 'loop' (raw
+ disk) type which allows use on RAID/LVM. Filesystems which
+ are currently fully supported are ext2, ext3, fat (FAT16
+ and FAT32), ReiserFS (with libreiserfs) and linux-swap.
+ Parted can also detect and remove HFS (Mac OS), JFS, NTFS,
+ UFS (Sun and HP), XFS and ASFS/AFFS/APFS (Amiga) filesystems,
+ but cannot create, resize or check these filesystems yet.
+ .
+ Note that ReiserFS support is only enabled if you install
+ the libreiserfs0.3-0 package. Since libreiserfs0.3-0 has been
+ removed from sarge, ReiserFS support is not compiled in the
+ default package.
+ .
+ The nature of this software means that any bugs could cause
+ massive data loss. While there are no known bugs at the moment,
+ they could exist, so please back up all important files before
+ running it, and do so at your own risk.
+Original-Maintainer: Parted Maintainer Team <parted-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: bzip2
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 160
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.0.5-1ubuntu1
+Replaces: libbz2 (<< 0.9.5d-3)
+Depends: libbz2-1.0 (= 1.0.5-1ubuntu1), libc6 (>= 2.4)
+Suggests: bzip2-doc
+Description: high-quality block-sorting file compressor - utilities
+ bzip2 is a freely available, patent free, high-quality data compressor.
+ It typically compresses files to within 10% to 15% of the best available
+ techniques, whilst being around twice as fast at compression and six
+ times faster at decompression.
+ .
+ bzip2 compresses files using the Burrows-Wheeler block-sorting text
+ compression algorithm, and Huffman coding.  Compression is generally
+ considerably better than that achieved by more conventional
+ LZ77/LZ78-based compressors, and approaches the performance of the PPM
+ family of statistical compressors.
+ .
+ The archive file format of bzip2 (.bz2) is incompatible with that of its
+ predecessor, bzip (.bz).
+Homepage: http://www.bzip.org/
+Original-Maintainer: Anibal Monsalve Salazar <anibal@xxxxxxxxxx>
+
+Package: vim-common
+Status: install ok installed
+Priority: important
+Section: editors
+Installed-Size: 536
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: vim
+Version: 2:7.2.079-1ubuntu5
+Depends: libc6 (>= 2.4)
+Recommends: vim | vim-gnome | vim-gtk | vim-lesstif | vim-nox | vim-tiny
+Conffiles:
+ /etc/vim/vimrc e8793640eb83ade46e2d452bcf62e7e3
+Description: Vi IMproved - Common files
+ Vim is an almost compatible version of the UNIX editor Vi.
+ .
+ Many new features have been added: multi level undo, syntax
+ highlighting, command line history, on-line help, filename
+ completion, block operations, folding, Unicode support, etc.
+ .
+ This package contains files shared by all non GUI-enabled vim
+ variants (vim and vim-tiny currently) available in Debian.
+ Examples of such shared files are: manpages, common executables
+ like xxd, and configuration files.
+Homepage: http://www.vim.org/
+Original-Maintainer: Debian VIM Maintainers <pkg-vim-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libwavpack1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 216
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: wavpack
+Version: 4.50.1-1
+Depends: libc6 (>= 2.4)
+Description: an audio codec (lossy and lossless) - library
+ WavPack is a completely open audio compression format providing lossless,
+ high-quality lossy, and a unique hybrid compression mode. Although the
+ technology is loosely based on previous versions of WavPack, the new version
+ 4 format has been designed from the ground up to offer unparalleled
+ performance and functionality.
+ .
+ This package contains the shared libraries necessary to run programs
+ using libwavpack.
+Original-Maintainer: Debian multimedia packages maintainers <pkg-multimedia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://www.wavpack.com
+
+Package: xfsprogs
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 3188
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 2.10.2-1
+Provides: fsck-backend
+Depends: libc6 (>= 2.4), libreadline5 (>= 5.2), libuuid1 (>= 1.05)
+Suggests: xfsdump, attr, dvhtool, quota
+Conflicts: xfsdump (<< 2.0.0)
+Description: Utilities for managing the XFS filesystem
+ A set of commands to use the XFS filesystem, including mkfs.xfs.
+ .
+ XFS is a high performance journaling filesystem which originated
+ on the SGI IRIX platform.  It is completely multi-threaded, can
+ support large files and large filesystems, extended attributes,
+ variable block sizes, is extent based, and makes extensive use of
+ Btrees (directories, extents, free space) to aid both performance
+ and scalability.
+ .
+ Refer to the documentation at http://oss.sgi.com/projects/xfs/
+ for complete details.  This implementation is on-disk compatible
+ with the IRIX version of XFS.
+Original-Maintainer: Nathan Scott <nathans@xxxxxxxxxx>
+Homepage: http://oss.sgi.com/projects/xfs/
+
+Package: ttf-thai-tlwg
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 4448
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: thaifonts-scalable
+Version: 1:0.4.11-2
+Replaces: xfonts-thai-ttf
+Depends: defoma, x-ttcidfont-conf
+Conflicts: xfonts-thai-ttf
+Conffiles:
+ /etc/fonts/conf.avail/64-ttf-thai-tlwg.conf bee2be8821db064d0eceed6369385bb6
+ /etc/fonts/conf.avail/90-ttf-thai-tlwg-synthetic.conf 51ee4a58464d95ea1322f6722254061f
+ /etc/defoma/hints/ttf-thai-tlwg.hints b9eb7b34378efc21f56c1264b1b631d1
+Description: Thai fonts in TrueType format
+ This package provides some free-licensed fonts that are enhanced
+ by developpers from Thai Linux Working Group in TrueType format.
+ Its purpose is to provide the basic font set for Thai free desktops.
+ .
+ It provides fonts from the National Font Project (Kinnari, Garuda,
+ Norasi), UI font from NECTEC (Loma) and several developed by TLWG
+ and its contributors.
+ .
+ Most modern desktop users who want to use Thai language should
+ install this package.
+Original-Maintainer: Theppitak Karoonboonyanan <thep@xxxxxxxxxxxxxx>
+Homepage: http://linux.thai.net/projects/thaifonts-scalable
+
+Package: openssl
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 836
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.9.8g-15ubuntu3
+Depends: libc6 (>= 2.4), libssl0.9.8 (>= 0.9.8f-5), zlib1g (>= 1:1.1.4)
+Suggests: ca-certificates, openssl-doc
+Conflicts: ssleay (<< 0.9.2b)
+Conffiles:
+ /etc/ssl/openssl.cnf 0b1cf9a835b829131d630b7c2fe55f3c
+Description: Secure Socket Layer (SSL) binary and related cryptographic tools
+ This package contains the openssl binary and related tools.
+ .
+ It is part of the OpenSSL implementation of SSL.
+ .
+ You need it to perform certain cryptographic actions like:
+  -  Creation of RSA, DH and DSA key parameters;
+  -  Creation of X.509 certificates, CSRs and CRLs;
+  -  Calculation of message digests;
+  -  Encryption and decryption with ciphers;
+  -  SSL/TLS client and server tests;
+  -  Handling of S/MIME signed or encrypted mail.
+Original-Maintainer: Debian OpenSSL Team <pkg-openssl-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: python-gnupginterface
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 140
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: gnupginterface
+Version: 0.3.2-9ubuntu2
+Provides: python2.5-gnupginterface, python2.6-gnupginterface
+Depends: python-support (>= 0.7.1), gnupg (>= 1.2.1)
+Description: Python interface to GnuPG (GPG)
+ GnuPGInterface is a Python module to interface with GnuPG.
+ It concentrates on interacting with GnuPG via filehandles,
+ providing access to control GnuPG via versatile and extensible means.
+ .
+ This module is based on GnuPG::Interface, a Perl module by the same
+ author.
+Original-Maintainer: Guilherme de S. Pastore <gpastore@xxxxxxxxxxxxxx>
+
+Package: libglib2.0-data
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 3852
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: glib2.0
+Version: 2.20.1-0ubuntu2
+Replaces: libglib1.3, libglib1.3-data
+Depends: libglib2.0-0 (>= 2.20.1-0ubuntu2)
+Conflicts: libglib1.3-data
+Description: Common files for GLib library
+ GLib is a library containing many useful C routines for things such
+ as trees, hashes, lists, and strings.  It is a useful general-purpose
+ C library used by projects such as GTK+, GIMP, and GNOME.
+ .
+ This package is needed for the runtime libraries to display messages in
+ languages other than English.
+Homepage: http://www.gtk.org/
+Original-Maintainer: Loic Minier <lool@xxxxxxxx>
+
+Package: python-software-properties
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 1040
+Maintainer: Michael Vogt <michael.vogt@xxxxxxxxxx>
+Architecture: all
+Source: software-properties
+Version: 0.71.5
+Depends: python (>= 2.4), python-central (>= 0.6.11), python-apt (>= 0.6.20ubuntu16), lsb-release, python-gnupginterface, unattended-upgrades, iso-codes
+Description: manage the repositories that you install software from
+ This software provides an abstraction of the used apt repositories.
+ It allows you to easily manage your distribution and independent software
+ vendor software sources.
+Python-Version: >= 2.4
+
+Package: screen-profiles
+Status: install ok installed
+Priority: optional
+Section: misc
+Installed-Size: 312
+Maintainer: Dustin Kirkland <kirkland@xxxxxxxxxx>
+Architecture: all
+Version: 1.44-0ubuntu1
+Depends: debconf (>= 0.5) | debconf-2.0, screen, gettext-base, python, python-newt
+Recommends: update-notifier-common, lsb-release
+Suggests: screen-profiles-extras
+Enhances: screen
+Description: a set of useful profiles and a profile-switcher for GNU screen
+ screen-profiles includes a set of profiles for the GNU screen window manager.
+ These profiles are quite useful on server machines which are not running
+ a graphical desktop.  The 'screen' command provides a number of advanced
+ features are not necessarily exposed in the default profile.  These profiles
+ provide features such as status bars, clocks, notifiers (reboot-required,
+ updates-available), etc.  The profile-switcher allows users to quickly switch
+ their .screenrc to any of the available profiles.
+ .
+ update-notifier-common provides a more efficient and standard mechanism for
+ calculating the number of updates available in the status panel.
+Homepage: http://launchpad.net/screen-profiles
+Original-Maintainer: Dustin Kirkland <kirkland@xxxxxxxxxx>
+
+Package: libical0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 616
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libical
+Version: 0.43-2
+Depends: libc6 (>= 2.4), tzdata
+Description: iCalendar library implementation in C (runtime)
+ libical is an open source implementation of the IETF's iCalendar calendaring
+ and scheduling protocols (RFC 2445, 2446, and 2447). It parses iCal components
+ and provides a C API for manipulating the component properties, parameters,
+ and subcomponents.
+ .
+ This package contains the files necessary for running applications that use
+ the libical library.
+Original-Maintainer: Fathi Boudra <fabo@xxxxxxxxxx>
+Homepage: http://freeassociation.sourceforge.net
+
+Package: xorg
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 24
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:7.4~5ubuntu18
+Provides: x-window-system, x-window-system-core
+Depends: xserver-xorg, libgl1-mesa-glx | libgl1, libglu1-mesa, xfonts-base (>= 1:1.0.0-1), xfonts-100dpi (>= 1:1.0.0-1), xfonts-75dpi (>= 1:1.0.0-1), x11-apps, x11-session-utils, x11-utils, x11-xfs-utils, x11-xkb-utils, x11-xserver-utils, xauth, xinit, xfonts-utils, xkb-data, xterm | x-terminal-emulator, x11-common, xinput
+Recommends: xfonts-scalable (>= 1:1.0.0-1)
+Suggests: xorg-docs
+Description: X.Org X Window System
+ This metapackage provides the components for a standalone
+ workstation running the X Window System.  It provides the X libraries, an X
+ server, a set of fonts, and a group of basic X clients and utilities.
+ .
+ Higher level metapackages, such as those for desktop environments, can
+ depend on this package and simplify their dependencies.
+ .
+ It should be noted that a package providing x-window-manager should also
+ be installed to ensure a comfortable X experience.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: ncurses-bin
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: utils
+Installed-Size: 508
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: ncurses
+Version: 5.7+20090207-1ubuntu1
+Provides: tput
+Pre-Depends: libc6 (>= 2.4), libncurses5 (>= 5.6+20071006-3)
+Conflicts: ncurses, tput
+Description: terminal-related programs and man pages
+ This package contains the programs used for manipulating the terminfo
+ database and individual terminfo entries, as well as some programs for
+ resetting terminals and such.
+Homepage: ftp://invisible-island.net/ncurses/
+Original-Maintainer: Daniel Baumann <daniel@xxxxxxxxxx>
+
+Package: perl-base
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: perl
+Installed-Size: 4348
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: perl
+Version: 5.10.0-19ubuntu1
+Replaces: libclass-multimethods-perl (<< 1.70-4), libperl5.8 (<< 5.8.0-20), libscalar-list-utils-perl, libxsloader-perl, perl (<= 5.10.0-9), perl-modules (<< 5.10.0-12)
+Provides: libscalar-list-utils-perl, libxsloader-perl, perl5-base, perlapi-5.10.0
+Pre-Depends: libc6 (>= 2.4), dpkg (>= 1.14.20)
+Suggests: perl
+Breaks: doc-base (<< 0.8.16)
+Conflicts: autoconf2.13 (<< 2.13-45), findimagedupes (<< 2.11-2), icheck (<< 0.9.7-6.1), libcflow-perl (<< 1:0.68-11.1), libclass-methodmaker-perl (<< 2.10-1), libclearsilver-perl (<< 0.10.4-1.1), libcrypt-openssl-bignum-perl (<< 0.04-1), libcrypt-openssl-dsa-perl (<< 0.13-3), libcrypt-openssl-random-perl (<< 0.04-1), libcrypt-openssl-rsa-perl (<< 0.25-1), libhamlib2-perl (<< 1.2.6.2-6), libqt-perl (<< 3.008-3), libscalar-list-utils-perl (<< 1:1.18-1), libsufary-perl (<< 2.1.1-8), libsys-cpu-perl (<< 0.40-2.1), libterm-size-perl (<< 0.2-4), libvideo-ivtv-perl (<< 0.13-6), libxsloader-perl (<< 0.08-1), megahal (<< 9.1.1a-5), razor (<< 1:2.84-6)
+Description: minimal Perl system
+ Perl is a scripting language used in many system scripts and utilities.
+ .
+ This package provides a Perl interpreter and the small subset of the
+ standard run-time library required to perform basic tasks. For a full
+ Perl installation, install "perl" (and its dependencies, "perl-modules"
+ and "perl-doc").
+Original-Maintainer: Brendan O'Dea <bod@xxxxxxxxxx>
+
+Package: sysv-rc
+Status: install ok installed
+Priority: required
+Section: admin
+Installed-Size: 264
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: sysvinit
+Version: 2.86.ds1-61ubuntu11
+Replaces: file-rc, sysvinit (<< 2.85-1)
+Recommends: lsb-base (>= 3.0-6)
+Suggests: sysv-rc-conf, bum
+Conflicts: file-rc
+Description: System-V-like runlevel change mechanism
+ This package provides support for the System-V like system
+ for booting, shutting down and changing runlevels,
+ configured through symbolic links in /etc/rc?.d/.
+Original-Maintainer: Debian sysvinit maintainers <pkg-sysvinit-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libtimedate-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 208
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: timedate
+Version: 1.1600-9
+Replaces: timedate
+Provides: timedate
+Depends: perl (>= 5.6.0-16)
+Conflicts: timedate
+Description: Time and date functions for Perl
+ The Date::Parse module can parse dates in a wide variety of input
+ formats, and many languages, though it is limited to only parsing
+ absolute dates. To parse relative dates, try Time::ParseDate.
+ .
+ This package also includes Date::Format, which can format dates into
+ strings, and Time::Zone, which can contains miscellaneous timezone
+ functions.
+Original-Maintainer: Christian Hammers <ch@xxxxxxxxxx>
+
+Package: apt
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 5232
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.7.20.2ubuntu6
+Replaces: libapt-pkg-dev (<< 0.3.7), libapt-pkg-doc (<< 0.3.7)
+Provides: libapt-pkg-libc6.9-6-4.7
+Depends: libc6 (>= 2.4), libgcc1 (>= 1:4.1.1), libstdc++6 (>= 4.2.1)
+Recommends: ubuntu-keyring
+Suggests: aptitude | synaptic | gnome-apt | wajig, dpkg-dev, apt-doc, bzip2, lzma, python-apt
+Conffiles:
+ /etc/apt/apt.conf.d/01autoremove 2b6786021f1ac070e6aa9615ca8f91c5
+ /etc/apt/apt.conf.d/01ubuntu 078b96538a377743bee0f554eb5b2fc6
+ /etc/logrotate.d/apt 172476f0940b1793f6190ed60031871a
+ /etc/cron.daily/apt 57e82a97f436190a5fad105079a7351c
+Description: Advanced front-end for dpkg
+ This is Debian's next generation front-end for the dpkg package manager.
+ It provides the apt-get utility and APT dselect method that provides a
+ simpler, safer way to install and upgrade packages.
+ .
+ APT features complete installation ordering, multiple source capability
+ and several other unique features, see the Users Guide in apt-doc.
+Original-Maintainer: APT Development Team <deity@xxxxxxxxxxxxxxxx>
+
+Package: bluez
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 1260
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 4.32-0ubuntu4
+Replaces: bluez-audio, bluez-input, bluez-network, bluez-serial, bluez-utils (<= 4.9)
+Depends: libbluetooth3 (>= 4.9), libc6 (>= 2.4), libdbus-1-3 (>= 1.1.1), libglib2.0-0 (>= 2.14.0), libnl1, libusb-0.1-4 (>= 2:0.1.12), module-init-tools, makedev | udev, lsb-base, dbus
+Breaks: udev (<< 136-1)
+Conffiles:
+ /etc/bluetooth/input.conf 4bebcedeed8770b1aea07eefc5c35a52
+ /etc/bluetooth/audio.conf dede4e92c1cecc8abbd12d23eb501bb6
+ /etc/bluetooth/network.conf ea95a939aa23cd57eb1dd9bf175dbf53
+ /etc/bluetooth/main.conf c42dbc1641920f392cbdd7b8d1e47a45
+ /etc/bluetooth/rfcomm.conf 0a87d3eddd29683c1456688907e67b4f
+ /etc/default/bluetooth 98b2da433eb77cabc9b080f1db0e114f
+ /etc/init.d/bluetooth 472fcdbb9df85fc8fc6ebaf0bf96af54
+ /etc/dbus-1/system.d/bluetooth.conf 20adfb6823f9b14c982c2cd7c39159a5
+Description: Bluetooth tools and daemons
+ This package contains tools and system daemons for using Bluetooth devices.
+ .
+ BlueZ is the official Linux Bluetooth protocol stack. It is an Open Source
+ project distributed under GNU General Public License (GPL).
+Homepage: http://www.bluez.org
+
+Package: sgml-base
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 148
+Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@xxxxxxxxxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 1.26
+Depends: perl
+Suggests: sgml-base-doc
+Conflicts: sgml-data (<= 0.02), sgmltools-2 (<= 2.0.2-4)
+Description: SGML infrastructure and SGML catalog file support
+ This package creates the SGML infrastructure directories and provides
+ SGML catalog file support in compliance with the current Debian SGML
+ Policy draft:
+ .
+   * infrastructure directories:
+      - /etc/sgml
+      - /usr/share/sgml/{declaration,dtd,entities,misc,stylesheet}
+      - /usr/share/local/sgml/{declaration,dtd,entities,misc,stylesheet}
+ .
+   * update-catalog(8): tool for maintaining the root SGML catalog
+     file and the package SGML catalog files in the '/etc/sgml' directory
+
+Package: libxslt1.1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 464
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxslt
+Version: 1.1.24-2ubuntu2
+Depends: libc6 (>= 2.4), libgcrypt11 (>= 1.4.0), libxml2 (>= 2.6.27)
+Conflicts: libxslt1 (<< 1.1.2-2)
+Description: XSLT processing library - runtime library
+ XSLT is an XML language for defining transformations of XML files from
+ XML to some other arbitrary format, such as XML, HTML, plain text, etc.
+ using standard XSLT stylesheets. libxslt is a C library which
+ implements XSLT.
+ .
+ This package contains libxslt library used by applications for XSLT
+ transformations.
+Original-Maintainer: Debian XML/SGML Group <debian-xml-sgml-pkgs@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: pciutils
+Status: install ok installed
+Priority: standard
+Section: admin
+Installed-Size: 552
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:3.0.0-4ubuntu8
+Depends: libc6 (>= 2.4), libpci3 (= 1:3.0.0-4ubuntu8)
+Suggests: bzip2, wget | curl | lynx
+Description: Linux PCI Utilities
+ This package contains various utilities for inspecting and setting of
+ devices connected to the PCI bus.
+Homepage: http://atrey.karlin.mff.cuni.cz/~mj/pciutils.shtml
+Original-Maintainer: Anibal Monsalve Salazar <anibal@xxxxxxxxxx>
+
+Package: libxcb-render-util0
+Status: install ok installed
+Priority: extra
+Section: libs
+Installed-Size: 72
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: xcb-util
+Version: 0.2.1+git1-1
+Depends: libc6 (>= 2.1.3), libxcb-render0, libxcb1
+Description: utility libraries for X C Binding -- render-util
+ This package contains the library files needed to run software using
+ libxcb-render-util, providing convenience functions for the Render extension.
+ .
+ The xcb-util module provides a number of libraries which sit on top of
+ libxcb, the core X protocol library, and some of the extension
+ libraries. These experimental libraries provide convenience functions
+ and interfaces which make the raw X protocol more usable. Some of the
+ libraries also provide client-side code which is not strictly part of
+ the X protocol but which have traditionally been provided by Xlib.
+Original-Maintainer: Julien Danjou <acid@xxxxxxxxxx>
+Homepage: http://xcb.freedesktop.org
+
+Package: libdbus-glib-1-2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 200
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: dbus-glib
+Version: 0.80-3
+Depends: libc6 (>= 2.1.3), libdbus-1-3 (>= 1.1.1), libglib2.0-0 (>= 2.16.0)
+Description: simple interprocess messaging system (GLib-based shared library)
+ D-Bus is a message bus, used for sending messages between applications.
+ Conceptually, it fits somewhere in between raw sockets and CORBA in
+ terms of complexity.
+ .
+ This package provides the GLib-based shared library for applications using the
+ GLib interface to D-Bus.
+ .
+ See the dbus description for more information about D-Bus in general.
+Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://www.freedesktop.org/wiki/Software/DBusBindings
+
+Package: ubuntu-standard
+Status: install ok installed
+Priority: optional
+Section: metapackages
+Installed-Size: 56
+Maintainer: Matt Zimmerman <mdz@xxxxxxxxxx>
+Architecture: i386
+Source: ubuntu-meta
+Version: 1.140
+Depends: aptitude, at, cpio, cron, dmidecode, dnsutils, dosfstools, ed, file, ftp, hdparm, info, iptables, logrotate, lshw, lsof, ltrace, man-db, memtest86+, mime-support, nano, parted, pciutils, popularity-contest, psmisc, rsync, strace, time, usbutils, wget
+Recommends: apparmor-utils, apt-transport-https, bash-completion, command-not-found, friendly-recovery, iputils-arping, iputils-tracepath, manpages, mlocate, mtr-tiny, ntfs-3g, openssh-client, ppp, pppconfig, pppoeconf, reiserfsprogs, tcpdump, telnet, ufw, update-manager-core, uuid-runtime, w3m
+Description: The Ubuntu standard system
+ This package depends on all of the packages in the Ubuntu standard system.
+ This set of packages provides a comfortable command-line Unix-like
+ environment.
+ .
+ It is also used to help ensure proper upgrades, so it is recommended that
+ it not be removed.
+
+Package: grub-common
+Status: install ok installed
+Priority: extra
+Section: admin
+Installed-Size: 220
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: grub2
+Version: 1.96+20080724-12ubuntu2
+Replaces: grub-efi (<< 1.96+20080426-3), grub-ieee1275 (<< 1.96+20080426-3), grub-linuxbios (<< 1.96+20080426-3), grub-pc (<< 1.96+20080426-3)
+Depends: libc6 (>= 2.8), base-files (>= 4.0.1~)
+Suggests: multiboot-doc
+Description: GRand Unified Bootloader, version 2 (common files)
+ This package contains common files shared by the distinct flavours of GRUB.
+Homepage: http://www.gnu.org/software/grub/grub-2.en.html
+Original-Maintainer: GRUB Maintainers <pkg-grub-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libgc1c2
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 248
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libgc
+Version: 1:6.8-1.2
+Replaces: libgc1
+Depends: libc6 (>= 2.4), libgcc1 (>= 1:4.1.1), libstdc++6 (>= 4.1.1)
+Conflicts: libgc1
+Description: conservative garbage collector for C and C++
+ Boehm's GC is a garbage collecting storage allocator that is
+ intended to be used as a plug-in replacement for C's malloc.
+Original-Maintainer: Ryan Murray <rmurray@xxxxxxxxxx>
+
+Package: pxljr
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 172
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.1-0ubuntu6
+Depends: libc6 (>= 2.4), libjpeg62, foomatic-filters (>= 4.0.0~bzr156)
+Description: Driver for HP's Color LaserJet 35xx/36xx color laser printers
+ HP's Color LaserJets 35xx and 36xx are supported by HP's HPIJS driver
+ (part of HPLIP), but HPIJS supports only the lowest quality level of
+ the three which are available under Windows. This driver which is not
+ developed at HP but by a independent developer supports all modes and
+ so provided the highest printout quality for these printers.
+ .
+ Home Page: http://sourceforge.net/projects/hp-pxl-jetready/
+Original-Maintainer: Till Kamppeter <till.kamppeter@xxxxxxxxx>
+
+Package: libio-compress-zlib-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 540
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 2.015-1
+Depends: perl (>= 5.6.0-16), libcompress-raw-zlib-perl (>= 2.015), libcompress-raw-zlib-perl (<< 2.015.~), libio-compress-base-perl (>= 2.015), libio-compress-base-perl (<< 2.015.~)
+Description: Perl interface to zlib
+ Provides object-oriented Perl interface for working with files,
+ supported by zlib - gzip, zip, inflate/deflate.
+Original-Maintainer: Debian Perl Group <pkg-perl-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://search.cpan.org/dist/IO-Compress-Zlib/
+
+Package: mtr-tiny
+Status: install ok installed
+Priority: standard
+Section: net
+Installed-Size: 112
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: mtr
+Version: 0.75-2
+Replaces: mtr
+Depends: libc6 (>= 2.4), libncurses5 (>= 5.6+20071006-3)
+Conflicts: mtr, suidmanager (<< 0.50)
+Description: Full screen ncurses traceroute tool
+ mtr combines the functionality of the 'traceroute' and 'ping' programs
+ in a single network diagnostic tool.
+ .
+ As mtr starts, it investigates the network connection between the host
+ mtr runs on and a user-specified destination host.  After it
+ determines the address of each network hop between the machines,
+ it sends a sequence ICMP ECHO requests to each one to determine the
+ quality of the link to each machine.  As it does this, it prints
+ running statistics about each machine.
+ .
+ mtr-tiny is compiled without support for X and conserves disk space.
+Original-Maintainer: Robert Woodcock <rcw@xxxxxxxxxx>
+
+Package: xserver-xorg-core
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 4284
+Maintainer: Ubuntu X-SWAT <ubuntu-x@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: xorg-server
+Version: 2:1.6.0-0ubuntu14
+Replaces: xserver-common (<< 7), xserver-xfree86 (<< 1:7.0.0), xserver-xorg (<< 6.8.2-38)
+Provides: xserver
+Depends: xserver-common (>> 7), libc6 (>= 2.7), libdbus-1-3 (>= 1.0.2), libdrm2 (>= 2.3.1), libfontenc1, libgcc1 (>= 1:4.1.1), libhal1 (>= 0.5.8.1), libpciaccess0, libpixman-1-0 (>= 0.13.2), libssl0.9.8 (>= 0.9.8f-5), libxau6, libxdmcp6, libxfont1 (>= 1:1.2.9), xserver-xorg
+Recommends: xkb-data, xfonts-base, libgl1-mesa-dri (>= 7.1~rc1)
+Suggests: xfonts-100dpi | xfonts-75dpi, xfonts-scalable
+Breaks: xserver-xorg-input-evdev (<= 1:2.0.99+git20080912-0ubuntu2), xserver-xorg-input-synaptics (<= 0.15.2-0ubuntu3)
+Conflicts: xserver-common (<< 7), xserver-xfree86 (<< 1:7.0.0), xserver-xorg (<< 6.8.2-38), xserver-xorg-input, xserver-xorg-input-2, xserver-xorg-input-2.1, xserver-xorg-input-wacom (<< 0.7.8), xserver-xorg-video, xserver-xorg-video-1.0, xserver-xorg-video-1.9, xserver-xorg-video-2, xserver-xorg-video-4, xserver-xorg-video-psb (<< 0.15.0-0ubuntu1~804um5)
+Conffiles:
+ /etc/dbus-1/system.d/xorg-server.conf 70413875eaeca87b503c4445532ac231
+Description: Xorg X server - core server
+ The Xorg X server is an X server for several architectures and operating
+ systems, which is derived from the XFree86 4.x series of X servers.
+ .
+ The Xorg server supports most modern graphics hardware from most vendors,
+ and supersedes all XFree86 X servers.
+ .
+ The Xorg server either needs fonts installed on the local host, or needs to
+ know of a remote hosts that provides font services (with xfs, for instance).
+ The former means that fonts packages are mandatory. The latter means that
+ font packages may be gratuitous. To err on the side of caution, install at
+ least the xfonts-base, xfonts-100dpi or xfonts-75dpi, and xfonts-scalable
+ packages.
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This package is built from the X.org xserver module.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: dnsmasq-base
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 656
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: dnsmasq
+Version: 2.47-3
+Depends: libc6 (>= 2.4), libdbus-1-3 (>= 1.1.1)
+Conflicts: dnsmasq (<< 2.41)
+Description: A small caching DNS proxy and DHCP/TFTP server
+ This package contains the dnsmasq executable and documentation, but
+ not the infrastructure required to run it as a system daemon. For
+ that, install the dnsmasq package.
+Original-Maintainer: Simon Kelley <simon@xxxxxxxxxxxxxxxxx>
+
+Package: bc
+Status: install ok installed
+Priority: standard
+Section: math
+Installed-Size: 196
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.06.94-3ubuntu1
+Depends: libc6 (>= 2.6.1-1), libncurses5 (>= 5.6+20071006-3), libreadline5 (>= 5.2)
+Description: The GNU bc arbitrary precision calculator language
+ GNU bc is an interactive algebraic language with arbitrary precision which
+ follows the POSIX 1003.2 draft standard, with several extensions including
+ multi-character variable names, an `else' statement and full Boolean
+ expressions.  GNU bc does not require the separate GNU dc program.
+ Home page: http://directory.fsf.org/GNU/bc.html
+Original-Maintainer: John Hasler <jhasler@xxxxxxxxxx>
+
+Package: netbase
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 96
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 4.34ubuntu2
+Depends: lsb-base (>= 3.0-6)
+Recommends: ifupdown
+Conflicts: inetutils-inetd (<< 2:1.4.3+20060719-3), openbsd-inetd (<< 0.20050402-3)
+Conffiles:
+ /etc/protocols 3aaa310b088fa84233d7fb2e358d4d29
+ /etc/rpc f0b6f6352bf886623adc04183120f83b
+ /etc/services b92ef61d6606c6589df9c2c406632457
+ /etc/init.d/networking 85e0df84569d61e029fab2a1eb06c30b
+Description: Basic TCP/IP networking system
+ This package provides the necessary infrastructure for basic TCP/IP based
+ networking.
+Original-Maintainer: Marco d'Itri <md@xxxxxxxx>
+
+Package: libmagic1
+Status: install ok installed
+Priority: standard
+Section: libs
+Installed-Size: 2420
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: file
+Version: 4.26-2ubuntu3
+Depends: libc6 (>= 2.8), zlib1g (>= 1:1.1.4)
+Suggests: file
+Description: File type determination library using "magic" numbers
+ This library can be used to classify files according to magic number tests. It
+ implements the core functionality of the file command.
+Homepage: http://www.darwinsys.com/file/
+Original-Maintainer: Daniel Baumann <daniel@xxxxxxxxxx>
+
+Package: libdrm2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 444
+Maintainer: Ubuntu X-SWAT <ubuntu-x@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libdrm
+Version: 2.4.5-0ubuntu4
+Depends: libc6 (>= 2.4)
+Description: Userspace interface to kernel DRM services -- runtime
+ This library implements the userspace interface to the kernel DRM
+ services.  DRM stands for "Direct Rendering Manager", which is the
+ kernelspace portion of the "Direct Rendering Infrastructure" (DRI).
+ The DRI is currently used on Linux to provide hardware-accelerated
+ OpenGL drivers.
+ .
+ This package provides the runtime environment for libdrm.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: whiptail
+Status: install ok installed
+Priority: important
+Section: utils
+Installed-Size: 96
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: newt
+Version: 0.52.2-11.3ubuntu3
+Replaces: newt0.10, newt0.21 (<< 0.21-4), whiptail-utf8
+Provides: whiptail-provider, whiptail-utf8
+Depends: libc6 (>= 2.4), libnewt0.52 (>= 0.52.2), libpopt0 (>= 1.14), libslang2 (>= 2.0.7-1)
+Conflicts: whiptail-provider
+Description: Displays user-friendly dialog boxes from shell scripts
+ Whiptail is a "dialog" replacement using newt instead of ncurses. It
+ provides a method of displaying several different types of dialog boxes
+ from shell scripts. This allows a developer of a script to interact with
+ the user in a much friendlier manner.
+Original-Maintainer: Alastair McKinstry <mckinstry@xxxxxxxxxx>
+
+Package: xserver-xorg-video-openchrome
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 564
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:0.2.903+svn713-1ubuntu1
+Replaces: libchromexvmc1, libchromexvmcpro1
+Provides: xserver-xorg-video-5
+Depends: libc6 (>= 2.4), libdrm2 (>= 2.3.1), libx11-6, libxext6, libxv1, libxvmc1, xserver-xorg-core (>= 2:1.5.99.901)
+Conflicts: libchromexvmc1, libchromexvmcpro1
+Description: X.Org X server -- VIA display driver
+ OpenChrome is a project for the development of free and open-source drivers
+ for the VIA UniChrome video chipsets.
+ .
+ Originally called the 'snapshot' release, since it was a snapshot of an
+ experimental branch of the unichrome cvs code, this is a continued development
+ of the open source unichrome driver (from http://unichrome.sf.net) which
+ also incorporates support for the unichrome-pro chipsets.
+ .
+ Support for hardware acceleration (XvMC) for all chipsets has subsequently
+ been ripped out of the unichrome.sf.net driver. Therefore your only option if
+ you wish to make use of the acceleration features of your VIA chip with free
+ and open-source drivers is to use this version of the driver.
+Homepage: http://www.openchrome.org
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: cups-client
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 428
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: cups
+Version: 1.3.9-17ubuntu1
+Replaces: cupsys-client (<< 1.3.7-6)
+Provides: cupsys-client
+Depends: libc6 (>= 2.4), libcups2 (>= 1.3.8), libcupsimage2 (>= 1.3.8), zlib1g (>= 1:1.2.3.3.dfsg), cups-common, adduser
+Suggests: cups, kdeprint, gtklp, cups-pt, xpp, cups-bsd
+Conflicts: cupsys-client (<< 1.3.7-6), lprng
+Description: Common UNIX Printing System(tm) - client programs (SysV)
+ The Common UNIX Printing System (or CUPS(tm)) is a printing system and
+ general replacement for lpd and the like.  It supports the Internet
+ Printing Protocol (IPP), and has its own filtering driver model for
+ handling various document types.
+ .
+ This package provides the System V style print client programs.
+ .
+ The terms "Common UNIX Printing System" and "CUPS" are trademarks of
+ Easy Software Products (www.easysw.com), and refer to the original
+ source packages from which these packages are made.
+Original-Maintainer: Debian CUPS Maintainers <pkg-cups-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: ntfs-3g
+Status: install ok installed
+Priority: optional
+Section: otherosfs
+Installed-Size: 144
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:2009.2.1-0ubuntu2
+Depends: libc6 (>= 2.4), libfuse2 (>= 2.6), libntfs-3g49, initramfs-tools
+Pre-Depends: fuse-utils
+Description: read-write NTFS driver for FUSE
+ The ntfs-3g driver is an open source, GPL licensed, third generation Linux
+ NTFS driver which was implemented by the Linux-NTFS project. It provides
+ full read-write access to NTFS, excluding access to encrypted files, writing
+ compressed files, changing file ownership, access right.
+ .
+ Technically it's based on and a major improvement to the third generation
+ Linux NTFS driver, ntfsmount. The improvements includes functionality,
+ quality and performance enhancements.
+ .
+ ntfs-3g is based on FUSE (userspace filesystem framework for Linux), thus
+ you will have to prepare fuse kernel module to be able to use it.
+ .
+ Fuse is available in any recent kernel. No need to prepare a kernel module
+ if you are already running Debian Etch kernel or newer.
+Homepage: http://www.ntfs-3g.org/
+Original-Maintainer: Adam Cécile (Le_Vert) <gandalf@xxxxxxxxxxx>
+
+Package: libxapian15
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1640
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: xapian-core
+Version: 1.0.7-4
+Depends: libc6 (>= 2.4), libgcc1 (>= 1:4.1.1), libstdc++6 (>= 4.2.1), zlib1g (>= 1:1.1.4)
+Suggests: xapian-tools
+Conflicts: libxapian2
+Description: Search engine library
+ This package contains the core Xapian runtime library.
+ .
+ The Xapian search engine library is a highly adaptable toolkit to allow
+ developers to easily add advanced indexing and search facilities to their own
+ applications.  It implements the probabilistic model of information retrieval,
+ and provides facilities for performing ranked free-text searches, relevance
+ feedback, phrase searching, boolean searching, stemming, and simultaneous
+ update and searching.  It is highly scalable, and is capable of working with
+ collections containing hundreds of millions of documents.
+Original-Maintainer: Olly Betts <olly@xxxxxxxxxx>
+Homepage: http://xapian.org/
+
+Package: libcompress-raw-zlib-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 240
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 2.015-1
+Depends: perl (>= 5.10.0-11.1ubuntu2), perlapi-5.10.0, libc6 (>= 2.3.4), zlib1g (>= 1:1.2.3.3.dfsg)
+Description: low-level interface to zlib compression library
+ The Compress::Raw::Zlib module provides a Perl low-level interface to the zlib
+ compression library.
+Original-Maintainer: Debian Perl Group <pkg-perl-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://search.cpan.org/dist/Compress-Raw-Zlib/
+
+Package: libsepol1
+Status: install ok installed
+Priority: required
+Section: libs
+Installed-Size: 284
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libsepol
+Version: 2.0.30-2ubuntu1
+Depends: libc6 (>= 2.4)
+Description: Security Enhanced Linux policy library for changing policy binaries
+ Security-enhanced Linux is a patch of the Linux kernel and a number
+ of utilities with enhanced security functionality designed to add
+ mandatory access controls to Linux.  The Security-enhanced Linux
+ kernel contains new architectural components originally developed to
+ improve the security of the Flask operating system. These
+ architectural components provide general support for the enforcement
+ of many kinds of mandatory access control policies, including those
+ based on the concepts of Type Enforcement®, Role-based Access
+ Control, and Multi-level Security.
+ .
+ libsepol provides an API for the manipulation of SELinux binary policies.
+ It is used by checkpolicy (the policy compiler) and similar tools, as well
+ as by programs like load_policy that need to perform specific transformations
+ on binary policies such as customizing policy boolean settings.
+Original-Maintainer: Manoj Srivastava <srivasta@xxxxxxxxxx>
+
+Package: libaspell15
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2332
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: aspell
+Version: 0.60.6-1
+Depends: libc6 (>= 2.4), libgcc1 (>= 1:4.1.1), libstdc++6 (>= 4.1.1)
+Recommends: aspell-en | aspell-dictionary | aspell6a-dictionary
+Suggests: aspell
+Conflicts: aspell-bin (<< 0.60.3-2), aspell6-dictionary
+Description: GNU Aspell spell-checker runtime library
+ These are the runtime parts of the Aspell and pspell spell-checking
+ toolkits, needed by applications that use the toolkits at runtime.
+ .
+ For a standalone spell-checker, install aspell as well.
+Original-Maintainer: Brian Nelson <pyro@xxxxxxxxxx>
+Homepage: http://aspell.net/
+
+Package: dmidecode
+Status: install ok installed
+Priority: important
+Section: utils
+Installed-Size: 168
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 2.9-1ubuntu1
+Depends: libc6 (>= 2.6)
+Conflicts: lm-sensors (<< 2.8.1-2)
+Description: Dump Desktop Management Interface data
+ The Desktop Management Interface provides a standardized description of
+ a computer's hardware, including characteristics such as BIOS serial
+ number and hardware connectors.  dmidecode provides a dump of the DMI
+ data available from the BIOS.  It is used as a back-end tool by other
+ hardware detection programs.
+Original-Maintainer: Petter Reinholdtsen <pere@xxxxxxxxxx>
+
+Package: apt-transport-https
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 136
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: apt
+Version: 0.7.20.2ubuntu6
+Depends: libapt-pkg-libc6.9-6-4.7, libc6 (>= 2.4), libcurl3-gnutls (>= 7.16.2-1), libgcc1 (>= 1:4.1.1), libstdc++6 (>= 4.1.1)
+Description: APT https transport
+ This package contains a APT https transport. It makes it possible to
+ use 'deb https://foo distro main' lines in the sources.list.
+Original-Maintainer: APT Development Team <deity@xxxxxxxxxxxxxxxx>
+
+Package: libpam-modules
+Status: install ok installed
+Priority: required
+Section: admin
+Installed-Size: 1016
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: pam
+Version: 1.0.1-9ubuntu1
+Replaces: libpam-umask, libpam0g-util
+Provides: libpam-mkhomedir, libpam-motd, libpam-umask
+Pre-Depends: libc6 (>= 2.8), libdb4.7, libpam0g (>= 0.99.7.1), libselinux1 (>= 2.0.59), debconf (>= 0.5) | debconf-2.0
+Conflicts: libpam-mkhomedir, libpam-motd, libpam-umask, libpam0g-modules (= 0.66-1), suidmanager (<< 0.50)
+Conffiles:
+ /etc/security/access.conf 13ec4d189f0ed9acf3433977a53d446b
+ /etc/security/pam_env.conf ed3f430e418ad366ddb23307a8755249
+ /etc/security/group.conf 5a6bd21801df034da8d64b407470e8f6
+ /etc/security/limits.conf cbacdff4aa5f51749f191b32754946cb
+ /etc/security/sepermit.conf d41c74654734a5c069a37bfc02f0a6d4
+ /etc/security/time.conf c23fcbb29dda6c1499e6a5e5ade0265e
+ /etc/security/namespace.conf c600fa5899cfb3198a01dfba2bf281f3
+ /etc/security/namespace.init c8d87e9bcc05ef2725cbf7c69f40ef97
+Description: Pluggable Authentication Modules for PAM
+ This package completes the set of modules for PAM. It includes the
+  pam_unix_*.so module as well as some specialty modules.
+Homepage: http://pam.sourceforge.net/
+Original-Maintainer: Steve Langasek <vorlon@xxxxxxxxxx>
+
+Package: xserver-xorg-video-vmware
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 140
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:10.16.5-2
+Replaces: xserver-xorg (<< 6.8.2-35), xserver-xorg-driver-vmware
+Provides: xserver-xorg-video-5
+Depends: libc6 (>= 2.4), xserver-xorg-core (>= 2:1.5.99.901)
+Conflicts: xserver-xorg-driver-vmware
+Description: X.Org X server -- VMware display driver
+ This package provides the driver for VMware client sessions, i.e. if Linux
+ is running inside a VMware session.
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This package is built from the X.org xf86-video-vmware driver module.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: tzdata
+Status: install ok installed
+Priority: required
+Section: libs
+Installed-Size: 6280
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 2009f-0ubuntu1
+Replaces: libc0.1, libc0.3, libc6, libc6.1
+Provides: tzdata-squeeze
+Depends: debconf | debconf-2.0
+Description: time zone and daylight-saving time data
+ This package contains data required for the implementation of
+ standard local time for many representative locations around the
+ globe. It is updated periodically to reflect changes made by
+ political bodies to time zone boundaries, UTC offsets, and
+ daylight-saving rules.
+Original-Maintainer: GNU Libc Maintainers <debian-glibc@xxxxxxxxxxxxxxxx>
+
+Package: avahi-autoipd
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 188
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: avahi
+Version: 0.6.23-4ubuntu4
+Depends: libc6 (>= 2.4), libdaemon0 (>= 0.13), adduser
+Recommends: dhcp3-client, iproute
+Conflicts: zeroconf
+Conffiles:
+ /etc/network/if-up.d/avahi-autoipd e69fbeb60636a1df402aa98a62a23703
+ /etc/network/if-down.d/avahi-autoipd dadd013707fd54993ae9b90e2efef5ec
+ /etc/avahi/avahi-autoipd.action 0230657ea9d569c35f12e4fa4db27bf7
+ /etc/dhcp3/dhclient-enter-hooks.d/avahi-autoipd 7d7762fd8d262c43301acf2f65588acc
+ /etc/dhcp3/dhclient-exit-hooks.d/zzz_avahi-autoipd 641b8913f45a5895ad9ba05a49cafc32
+Description: Avahi IPv4LL network address configuration daemon
+ Avahi is a fully LGPL framework for Multicast DNS Service Discovery.
+ It allows programs to publish and discover services and hosts
+ running on a local network with no specific configuration.  For
+ example you can plug into a network and instantly find printers to
+ print to, files to look at and people to talk to.
+ .
+ This tool implements IPv4LL, "Dynamic Configuration of IPv4 Link-Local
+ Addresses" (IETF RFC3927), a protocol for automatic IP address
+ configuration from the link-local 169.254.0.0/16 range without the
+ need for a central server. It is primarily intended to be used in
+ ad-hoc networks which lack a DHCP server.
+Homepage: http://avahi.org/
+Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libudev0
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 160
+Maintainer: Scott James Remnant <scott@xxxxxxxxxx>
+Architecture: i386
+Source: udev
+Version: 141-1
+Depends: libc6 (>= 2.4)
+Description: udev library
+ libudev provides a set of functions for accessing the udev database
+ and querying sysfs.
+
+Package: python
+Status: install ok installed
+Priority: important
+Section: python
+Installed-Size: 624
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: python-defaults
+Version: 2.6.2-0ubuntu1
+Replaces: python-base, python-xmlbase, python2.3 (<= 2.3.2-6)
+Provides: python-ctypes, python-email, python-plistlib, python-wsgiref, python-xmlbase
+Depends: python2.6 (>= 2.6.2), python-minimal (= 2.6.2-0ubuntu1)
+Suggests: python-doc (>= 2.6.2-0ubuntu1), python-tk (>= 2.6.2-0ubuntu1), python-profiler (>= 2.6.2-0ubuntu1)
+Conflicts: libboost-dbg (<< 1.34.1-15ubuntu3), libboost-python-dev (<< 1.34.1-15ubuntu3), libboost-python1.35-dev (<< 1.35.0-8ubuntu5), libboost1.35-dbg (<< 1.35.0-8ubuntu5), pitivi (<< 0.11.3-1ubuntu1), python-aubio (<< 0.3.2-2ubuntu3), python-base, python-bz2, python-central (<< 0.5.5), python-csv, python-freevo (<< 1.8.1-3ubuntu3), python-xmlbase, python2.1 (<= 2.1.2), python2.3 (<< 2.3.5-14), qmtest (<< 2.4-5ubuntu1), ufw (<< 0.27~r416)
+Description: An interactive high-level object-oriented language (default version)
+ Python, the high-level, interactive object oriented language,
+ includes an extensive class library with lots of goodies for
+ network programming, system administration, sounds and graphics.
+ .
+ This package is a dependency package, which depends on Debian's default
+ Python version (currently v2.6).
+Original-Maintainer: Matthias Klose <doko@xxxxxxxxxx>
+
+Package: obex-data-server
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 272
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.4.4-0ubuntu1
+Depends: libbluetooth3 (>= 4.9), libc6 (>= 2.7), libdbus-1-3 (>= 1.0.2), libdbus-glib-1-2 (>= 0.71), libglib2.0-0 (>= 2.16.0), libgtk2.0-0 (>= 2.15.0), libopenobex1, libusb-0.1-4 (>= 2:0.1.12)
+Conffiles:
+ /etc/obex-data-server/capability.xml 3d427ce2283eb582158048896ec3cfcb
+ /etc/obex-data-server/imaging_capabilities.xml 0a887ca2727603bdc4c97f0e16b63333
+ /etc/dbus-1/system.d/obex-data-server.conf faf589cda9bf57b9714237b24f58a8b8
+Description: D-Bus service for OBEX client and server side functionality
+ obex-data-server is a D-Bus service providing high-level OBEX client and
+ server side functionality (currently supports OPP and FTP profiles and
+ Bluetooth transport).
+Homepage: http://wiki.muiline.com/obex-data-server
+Original-Maintainer: Filippo Giunchedi <filippo@xxxxxxxxxx>
+
+Package: python-apport
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 560
+Maintainer: Martin Pitt <martin.pitt@xxxxxxxxxx>
+Architecture: all
+Source: apport
+Version: 1.0-0ubuntu5
+Replaces: python-apport-utils
+Depends: python (<< 2.7), python (>= 2.5), python-central (>= 0.6.11), python-apt, python-problem-report (>= 0.94), python-launchpad-bugs (>= 0.2.11), gdb
+Conflicts: python-apport-utils
+Conffiles:
+ /etc/apport/crashdb.conf bc74dd3441cc4e107e1d42ceb0b39008
+ /etc/apport/blacklist.d/README.blacklist c2ed1eb9a17ec2550747b4960cf4b73c
+Description: apport crash report handling library
+ This Python package provides high-level functions for creating and
+ handling apport crash reports:
+ .
+  * Query available and new reports.
+  * Add OS, packaging, and process runtime information to a report.
+  * Various frontend utility functions.
+  * Python hook to generate crash reports when Python scripts fail.
+Python-Version: 2.5, 2.6
+
+Package: libfontconfig1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 256
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: fontconfig
+Version: 2.6.0-1ubuntu12
+Depends: libc6 (>= 2.4), libexpat1 (>= 1.95.8), libfreetype6 (>= 2.2.1), zlib1g (>= 1:1.1.4), fontconfig-config (= 2.6.0-1ubuntu12)
+Description: generic font configuration library - runtime
+ Fontconfig is a font configuration and customization library, which
+ does not depend on the X Window System. It is designed to locate
+ fonts within the system and select them according to requirements
+ specified by applications.
+ .
+ This package contains the runtime library needed to launch applications
+ using fontconfig.
+Original-Maintainer: Keith Packard <keithp@xxxxxxxxxx>
+
+Package: xserver-xorg-input-wacom
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 248
+Maintainer: Ubuntu X-SWAT <ubuntu-x@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: wacom-tools
+Version: 1:0.8.2.2-0ubuntu2
+Replaces: wacom-tools (<< 1:0.7.9.3-2)
+Provides: xserver-xorg-input-4
+Depends: xserver-xorg-core (>= 2:1.5.99.901), libc6 (>= 2.8), libdbus-1-3 (>= 1.0.2), libhal1 (>= 0.5.8.1)
+Suggests: wacom-tools
+Conflicts: wacom-tools (<< 1:0.7.9.3-2)
+Description: X.Org X server -- Wacom input driver
+ This package provides the X.Org driver and udev support for Wacom tablet
+ devices.
+ .
+ Note that it is not a part of the X.Org distribution since X11R6: this driver
+ is from the linuxwacom project. See http://linuxwacom.sf.net for details.
+ .
+ You will also require a kernel module which supports your tablet. Many types
+ are supported by the 'wacom' module supplied with current Linux kernels. If
+ yours is not one of them (yet) then see the wacom-kernel-source package for
+ the most up to date module available.
+Original-Maintainer: Ron Lee <ron@xxxxxxxxxx>
+
+Package: ifupdown
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 256
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.6.8ubuntu19
+Replaces: netbase (<< 4.00)
+Depends: net-tools, libc6 (>= 2.4), debconf (>= 1.2.0) | debconf-2.0, lsb-base (>= 1.3-9ubuntu3), netbase (>= 4.30ubuntu2)
+Suggests: iproute, dhcp3-client | dhcp-client, ppp
+Breaks: udev (<< 136-1)
+Description: high level tools to configure network interfaces
+ This package provides the tools ifup and ifdown which may be used to
+ configure (or, respectively, deconfigure) network interfaces based on
+ interface definitions in the file /etc/network/interfaces.
+Original-Maintainer: Anthony Towns <ajt@xxxxxxxxxx>
+
+Package: libxxf86dga1
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 72
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxxf86dga
+Version: 2:1.0.2-1
+Depends: libc6 (>= 2.6.1-1), libx11-6, libxext6, x11-common
+Description: X11 Direct Graphics Access extension library
+ libXxf86dga provides the XFree86-DGA extension, which allows direct
+ graphics access to a framebuffer-like region, and also allows relative
+ mouse reporting, et al.  It is mainly used by games and emulators for
+ games.
+ .
+ More information about X.Org can be found at:
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libxext6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 124
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxext
+Version: 2:1.0.99.1-0ubuntu3
+Depends: libc6 (>= 2.4), libx11-6, libxau6, x11-common
+Description: X11 miscellaneous extension library
+ libXext provides an X Window System client interface to several extensions to
+ the X protocol.
+ .
+ The supported protocol extensions are:
+  - DOUBLE-BUFFER (DBE), the Double Buffer extension;
+  - DPMS, the VESA Display Power Management System extension;
+  - Extended-Visual-Information (EVI), an extension for gathering extra
+    information about the X server's visuals;
+  - LBX, the Low Bandwidth X extension;
+  - MIT-SHM, the MIT X client/server shared memory extension;
+  - MIT-SUNDRY-NONSTANDARD, a miscellaneous extension by MIT;
+  - Multi-Buffering, the multi-buffering and stereo display extension;
+  - SECURITY, the X security extension;
+  - SHAPE, the non-rectangular shaped window extension;
+  - SYNC, the X synchronization extension;
+  - TOG-CUP, the Open Group's Colormap Utilization extension;
+  - XC-APPGROUP, the X Consortium's Application Group extension;
+  - XC-MISC, the X Consortium's resource ID querying extension;
+  - XTEST, the X test extension (this is one of two client-side
+    implementations; the other is in the libXtst library, provided by the
+    libxtst6 package);
+ .
+ libXext also provides a small set of utility functions to aid authors of
+ client APIs for X protocol extensions.
+ .
+ More information about X.Org can be found at:
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: myspell-en-gb
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 608
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: openoffice.org-dictionaries (1:3.0.1~rc1-8ubuntu1)
+Version: 1:3.0.1-8ubuntu1
+Provides: myspell-dictionary, myspell-dictionary-en
+Depends: dictionaries-common (>= 0.10) | openoffice.org-updatedicts
+Conflicts: openoffice.org (<= 1.0.3-2)
+Description: English_british dictionary for myspell
+ This is the English_british dictionary for use with the myspell spellchecker
+ which is currently used within OpenOffice.org and the mozilla
+ spellchecker.
+Original-Maintainer: Debian OpenOffice Team <debian-openoffice@xxxxxxxxxxxxxxxx>
+
+Package: libogg0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 80
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libogg
+Version: 1.1.3-4build1
+Depends: libc6 (>= 2.1.3)
+Description: Ogg Bitstream Library
+ Libogg is a library for manipulating ogg bitstreams.  It handles
+ both making ogg bitstreams and getting packets from ogg bitstreams.
+Original-Maintainer: Debian Xiph.org Maintainers <pkg-xiph-maint@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libts-0.0-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 180
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: tslib
+Version: 1.0-4ubuntu2
+Replaces: libts0, tslib
+Provides: libts0, tslib
+Depends: libc6 (>= 2.7)
+Conflicts: libts0, tslib
+Conffiles:
+ /etc/ts.conf 4783b67c395ff75d49d5a462c0b9fafe
+Description: touch screen library
+ Tslib is an abstraction layer for touchscreen panel events, as well as a
+ filter stack for the manipulation of those events. Examples of implemented
+ filters include jitter smoothing and the calibration transform.
+Homepage: http://tslib.berlios.de/
+Original-Maintainer: Neil Williams <codehelp@xxxxxxxxxx>
+
+Package: xserver-xorg-video-radeon
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 932
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: xserver-xorg-video-ati
+Version: 1:6.12.1-0ubuntu2
+Replaces: xserver-xorg-video-ati (<= 1:6.8.191-1)
+Provides: xserver-xorg-video-5
+Depends: libc6 (>= 2.1.3), libpciaccess0, xserver-xorg-core (>= 2:1.5.99.901)
+Description: X.Org X server -- ATI Radeon display driver
+ This driver for the X.Org X server (see xserver-xorg for a further description)
+ provides support for the ATI Radeon and FireGL series. It provides the 'radeon'
+ driver.
+ .
+ Note that this is not the same as the ATI-provided, binary-only, 'fglrx'
+ driver, which provides additional 3D functionality for some newer Radeon
+ cards, but is not supported.
+ .
+ This driver provides support for Radeon and FireGL series ATI cards.
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This package is built from the X.org xf86-video-ati driver module.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: x11-session-utils
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 280
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 7.3+1
+Replaces: xbase-clients (<= 1:7.2.ds2-3), xutils (<= 1:7.1.ds.3-1), smproxy, xsm (<= 1:1.0.1-1)
+Depends: libc6 (>= 2.6.1-1), libice6 (>= 1:1.0.0), libsm6, libx11-6, libxaw7, libxmu6, libxt6, cpp
+Pre-Depends: x11-common (>= 1:7.0.0)
+Conflicts: smproxy, xsm (<= 1:1.0.1-1)
+Conffiles:
+ /etc/X11/app-defaults/XSm 34f161c4cba12ff40099e12b40e511d3
+Description: X session utilities
+ This package provides the X session manager and related tools:
+  - rstart;
+  - smproxy, a session manager proxy for X clients that do not use the X
+    session manager protocol;
+  - xsm, a session manager for X sessions;
+ Installation of an rsh or ssh daemon (server) is necessary if rstartd is
+ to be used, and installation of an rsh or ssh client is necessary if
+ rstart is to be used.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: lupin-casper
+Status: install ok installed
+Priority: extra
+Section: misc
+Installed-Size: 80
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: lupin
+Version: 0.22
+Depends: initramfs-tools (>= 0.40ubuntu11), casper (>= 0.98)
+Description: Add support for loop-mount installations to casper
+ The Wubi installer provides a means for installing Ubuntu into a
+ loop-mounted filesystem image hosted on a Windows filesystem. lupin-casper
+ provides hooks to find an ISO image on a hard disk and to read a preseed
+ file from a hard disk, which are used in the early part of this process.
+Original-Maintainer: Agostino Russo <agostino.russo@xxxxxxxxx>
+
+Package: libxrender1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 92
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxrender
+Version: 1:0.9.4-2
+Depends: libc6 (>= 2.1.3), libx11-6
+Description: X Rendering Extension client library
+ The X Rendering Extension (Render) introduces digital image composition as
+ the foundation of a new rendering model within the X Window System.
+ Rendering geometric figures is accomplished by client-side tessellation into
+ either triangles or trapezoids.  Text is drawn by loading glyphs into the
+ server and rendering sets of them.  The Xrender library exposes this
+ extension to X clients.
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This module can be found at
+ git://anongit.freedesktop.org/git/xorg/lib/libXrender
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libmagickwand1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1184
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: imagemagick
+Version: 7:6.4.5.4.dfsg1-1ubuntu3
+Depends: libbz2-1.0, libc6 (>= 2.4), libfreetype6 (>= 2.3.5), libgomp1 (>= 4.2.1), libice6 (>= 1:1.0.0), libjpeg62, liblcms1 (>= 1.15-1), libltdl7 (>= 2.2.6a), libmagickcore1, libsm6, libtiff4, libx11-6, libxext6, libxt6, zlib1g (>= 1:1.1.4)
+Description: image manipulation library
+ The MagickWand API is the recommended interface between the C programming
+ language and the ImageMagick image processing libraries. Unlike the
+ MagickCore C API, MagickWand uses only a few opaque types. Accessors are
+ available to set or get important wand properties.
+ .
+ This package contains the C libraries needed to run executables that make
+ use of MagickWand.
+Homepage: http://www.imagemagick.org/
+Original-Maintainer: ImageMagick Packaging Team <pkg-gmagick-im-team@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: ttf-bitstream-vera
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 732
+Maintainer: Ubuntu Core Developers <ubuntu-devel@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 1.10-7
+Depends: defoma
+Recommends: x-ttcidfont-conf | fontconfig
+Conffiles:
+ /etc/defoma/hints/ttf-bitstream-vera.hints afd1963fa2faea0a4ad82b923d7d0424
+Description: The Bitstream Vera family of free TrueType fonts
+ This is a set of high-quality TrueType fonts created by Bitstream, Inc. and
+ released under a DFSG-free license. They are intended to remedy the lack of
+ free high-quality fonts for the free desktop environments.
+ .
+ They fully cover Western European languages (ISO-8859-1, ISO-8859-15) and
+ Turkish (ISO-8859-9). They also include a selection of mathematical and other
+ symbols and some limited support for Eastern European languages (parts of
+ ISO-8859-2). Non-latin scripts are not supported (use ttf-dejavu instead).
+Original-Maintainer: Daniel Baumann <daniel@xxxxxxxxxx>
+
+Package: hal-info
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 476
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 20090407-0ubuntu1
+Replaces: hal (<< 0.5.9)
+Conflicts: hal (<< 0.5.10)
+Description: Hardware Abstraction Layer - fdi files
+ HAL provides an abstract view on hardware.
+ .
+ This abstraction layer is simply an interface that makes it possible to
+ add support for new devices and new ways of connecting devices to the
+ computer, without modifying every application that uses the device.
+ It maintains a list of devices that currently exist, and can provide
+ information about those upon request.
+ .
+ This package contains various device information files (also known
+ as .fdi files) for the hal package.
+ These fdi files contain additional information that help to describe the
+ hardware more detailed, such as suspend/resume quirks for laptops, music
+ player or photo camera types etc.
+Homepage: http://hal.freedesktop.org/
+Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: dbus
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 608
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.2.12-0ubuntu2
+Replaces: dbus-1, dbus-1-utils (<< 1.0.2-5), libdbus0
+Provides: dbus-1-utils
+Depends: libc6 (>= 2.4), libdbus-1-3 (>= 1.0.2), libexpat1 (>= 1.95.8), libselinux1 (>= 2.0.59), adduser, debianutils (>= 1.22.0), lsb-base (>= 3.2-14), consolekit (>= 0.2.3-3ubuntu2)
+Recommends: dbus-x11
+Conflicts: dbus-1, dbus-1-utils (<< 1.0.2-5), libdbus-1-1, libdbus0
+Conffiles:
+ /etc/dbus-1/session.conf ddadc925ec2b5fb086bba61412b07c21
+ /etc/dbus-1/system.conf a19ea094ea74057e27f386ab733c4680
+ /etc/default/dbus 0d0f25a2f993509c857eb262f6e22015
+ /etc/init.d/dbus 00144d61d6ce344e85192b30e2811584
+Description: simple interprocess messaging system
+ D-Bus is a message bus, used for sending messages between applications.
+ Conceptually, it fits somewhere in between raw sockets and CORBA in
+ terms of complexity.
+ .
+ D-Bus supports broadcast messages, asynchronous messages (thus
+ decreasing latency), authentication, and more. It is designed to be
+ low-overhead; messages are sent using a binary protocol, not using
+ XML. D-Bus also supports a method call mapping for its messages, but
+ it is not required; this makes using the system quite simple.
+ .
+ It comes with several bindings, including GLib, Python, Qt and Java.
+ .
+ This package contains the D-Bus daemon and related utilities.
+ .
+ The client-side library can be found in the libdbus-1-3 package, as it is no
+ longer contained in this package.
+Homepage: http://dbus.freedesktop.org/
+Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: dhcp3-client
+Status: install ok installed
+Priority: important
+Section: net
+Installed-Size: 664
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: dhcp3
+Version: 3.1.1-5ubuntu8
+Depends: debianutils (>= 2.8.2), dhcp3-common (= 3.1.1-5ubuntu8), libc6 (>= 2.4), debconf (>= 0.5) | debconf-2.0
+Suggests: resolvconf, avahi-autoipd, apparmor
+Conflicts: dhcp-client (<< 3.0), samba-common (<< 3.0.0beta1-2)
+Conffiles:
+ /etc/dhcp3/dhclient-enter-hooks.d/debug 23cdc0f2053ca58ee7ba5926af1296bc
+ /etc/dhcp3/dhclient-exit-hooks.d/debug 34b179df34a6ac20dbb07542f33c8104
+ /etc/dhcp3/dhclient-exit-hooks.d/rfc3442-classless-routes 1560edae6a0b640ab07593809f045f9b
+ /etc/dhcp3/dhclient.conf 5e012287a1dcf058b3fea4c5bf0bd95a
+ /etc/apparmor.d/sbin.dhclient3 1b816678f5b627b23b30c532d719e1b8
+ /etc/network/if-pre-up.d/dhclient3-apparmor 55f2490956225c88f97e1efd7a0988f5
+Description: DHCP client
+ This is the client from version 3 of the Internet Software
+ Consortium's implementation of DHCP. For more information visit
+ http://www.isc.org.
+ .
+ Dynamic Host Configuration Protocol (DHCP) is a protocol like BOOTP
+ (actually dhcpd includes much of the functionality of bootpd). It
+ gives client machines "leases" for IP addresses and can
+ automatically set their network configuration. If your machine
+ depends on DHCP (especially likely if it's a workstation on a large
+ network, or a laptop, or attached to a cable modem), keep this or
+ another DHCP client installed.
+ .
+ Extra documentation can be found in the package dhcp3-common.
+Original-Maintainer: Andrew Pollock <apollock@xxxxxxxxxx>
+
+Package: xserver-xorg-video-savage
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 244
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:2.2.1-4ubuntu2
+Replaces: xserver-xorg (<< 6.8.2-35), xserver-xorg-driver-savage
+Provides: xserver-xorg-video-5
+Depends: libc6 (>= 2.3.4), xserver-xorg-core (>= 2:1.5.99.901)
+Conflicts: xserver-xorg-driver-savage
+Description: X.Org X server -- Savage display driver
+ This package provides the driver for the S3/VIA Savage/ProSavage/Twister family
+ of chipsets.
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This package is built from the X.org xf86-video-savage driver module.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: xserver-xorg-video-fbdev
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 100
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:0.4.0-3
+Replaces: xserver-xorg (<< 6.8.2-35), xserver-xorg-driver-fbdev
+Provides: xserver-xorg-video-5
+Depends: libc6 (>= 2.1.3), xserver-xorg-core (>= 2:1.5.99.901)
+Conflicts: xserver-xorg-driver-fbdev
+Description: X.Org X server -- fbdev display driver
+ This package provides the driver for the Linux framebuffer device (aka
+ 'fbdev').
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This package is built from the X.org xf86-video-fbdev driver module.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libxfont1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 316
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxfont
+Version: 1:1.3.3-1ubuntu1
+Depends: libc6 (>= 2.4), libfontenc1, libfreetype6 (>= 2.3.5), zlib1g (>= 1:1.1.4)
+Description: X11 font rasterisation library
+ libXfont provides various services for X servers, most notably font
+ selection and rasterisation (through external libraries).
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This module can be found at
+ git://anongit.freedesktop.org/git/xorg/lib/libXfont
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libenchant1c2a
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 304
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: enchant
+Version: 1.4.2-3.3ubuntu1
+Replaces: libenchant-dev (<< 1.1.1++cvs.2003.11.08), libenchant1, libenchant1c2
+Depends: libaspell15 (>= 0.60), libc6 (>= 2.4), libdbus-1-3 (>= 1.0.2), libdbus-glib-1-2 (>= 0.71), libgcc1 (>= 1:4.1.1), libglib2.0-0 (>= 2.14.0), libhunspell-1.2-0 (>= 1.2.4), libstdc++6 (>= 4.1.1), zlib1g (>= 1:1.1.4)
+Suggests: libenchant-voikko
+Conflicts: libenchant1, libenchant1c2
+Description: a wrapper library for various spell checker engines
+ Enchant is a generic spell checking library which uses existing
+ spell checker engines such as ispell, aspell and myspell as its backends.
+ .
+ Enchant steps in to provide uniformity and conformity on top of these
+ libraries, and implement certain features that may be lacking in any
+ individual provider library.
+ .
+ This package contains shared library and program.
+Original-Maintainer: Masayuki Hatta (mhatta) <mhatta@xxxxxxxxxx>
+
+Package: libthai0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 100
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libthai
+Version: 0.1.9-4
+Depends: libc6 (>= 2.1.3), libdatrie0 (>= 0.1.2), libthai-data
+Description: Thai language support library
+ LibThai is a set of Thai language support routines aimed to ease
+ developers' tasks to incorporate Thai language support in their applications.
+ It includes important Thai-specific functions e.g. word breaking, input and
+ output methods as well as basic character and string supports.
+ .
+ This package contains the shared libraries needed to run programs that use
+ the LibThai library.
+Original-Maintainer: Theppitak Karoonboonyanan <thep@xxxxxxxxxxxxxx>
+Homepage: http://libthai.sourceforge.net/
+
+Package: libhal-storage1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 176
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: hal
+Version: 0.5.12~rc1+git20090403-0ubuntu1
+Depends: libc6 (>= 2.4), libdbus-1-3 (>= 1.0.2), libhal1 (>= 0.5.8.1), libsmbios2
+Description: Hardware Abstraction Layer - shared library for storage devices
+ HAL provides an abstract view on hardware.
+ .
+ This abstraction layer is simply an interface that makes it possible to
+ add support for new devices and new ways of connecting devices to the
+ computer, without modifying every application that uses the device.
+ It maintains a list of devices that currently exist, and can provide
+ information about those upon request.
+ .
+ This library provides an interface for handling storage devices.
+Homepage: http://hal.freedesktop.org/
+Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: aspell-en
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 548
+Maintainer: Ubuntu Core Developers <ubuntu-devel@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 6.0-0-5.1
+Provides: aspell-dictionary
+Depends: aspell (>= 0.60.3-2), dictionaries-common (>= 0.49.2)
+Description: English dictionary for GNU Aspell
+ This package contains all the required files to add support for English
+ language to the GNU Aspell spell checker.
+ .
+ American, British and Canadian spellings are included.
+Original-Maintainer: Brian Nelson <pyro@xxxxxxxxxx>
+
+Package: libxvmc1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 100
+Maintainer: Ubuntu Core Developers <ubuntu-devel@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxvmc
+Version: 2:1.0.4-2ubuntu1
+Depends: libc6 (>= 2.6), libx11-6, libxext6, libxv1, x11-common
+Conffiles:
+ /etc/X11/XvMCConfig 0976f2acc0790481782bab1a5c49d471
+Description: X11 Video extension library
+ libXvMC provides an X Window System client interface to the
+ XVideo-MotionCompensation extension to the X protocol.
+ .
+ The XVideo-MotionCompensation extension allows for further accelerated drawing
+ of videos.  Video data may be sent at earlier stages of the decoding pipeline
+ than raw YUV data.  At the moment, driver support for XvMC is poor to
+ non-existent.
+ .
+ More information about X.Org can be found at:
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libgstreamer-plugins-base0.10-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1336
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: gst-plugins-base0.10
+Version: 0.10.22-5
+Depends: libc6 (>= 2.4), libglib2.0-0 (>= 2.16.0), libgstreamer0.10-0 (>= 0.10.22)
+Suggests: libvisual-0.4-plugins, gstreamer-codec-install | gnome-codec-install
+Conflicts: totem-gstreamer (<= 2.17.92-0ubuntu1)
+Description: GStreamer libraries from the "base" set
+ GStreamer is a streaming media framework, based on graphs of filters
+ which operate on media data.  Applications using this library can do
+ anything from real-time sound processing to playing videos, and just
+ about anything else media-related.  Its plugin-based architecture means
+ that new data types or processing capabilities can be added simply by
+ installing new plug-ins.
+ .
+ This package contains libraries from the "base" set, an essential
+ exemplary set of elements.
+Original-Maintainer: Maintainers of GStreamer packages <pkg-gstreamer-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://gstreamer.freedesktop.org
+
+Package: libgtk2.0-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 5260
+Maintainer: Sebastien Bacher <seb128@xxxxxxxxxx>
+Architecture: i386
+Source: gtk+2.0
+Version: 2.16.1-0ubuntu2
+Replaces: libgtk2.0-0png3
+Provides: gtk2.0-binver-2.10.0
+Depends: libgtk2.0-common, libatk1.0-0 (>= 1.20.0), libc6 (>= 2.7), libcairo2 (>= 1.6.4-6.1), libcups2 (>= 1.3.8), libfontconfig1 (>= 2.4.0), libfreetype6 (>= 2.2.1), libgcrypt11 (>= 1.4.0), libglib2.0-0 (>= 2.19.7), libgnutls26 (>= 2.4.0-0), libjasper1 (>= 1.900.1), libjpeg62, libkrb53 (>= 1.6.dfsg.2), libpango1.0-0 (>= 1.20.0), libpng12-0 (>= 1.2.13-4), libtasn1-3 (>= 0.3.4), libtiff4, libx11-6, libxcomposite1 (>= 1:0.3-1), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3 (>= 1:4.0.1), libxi6 (>= 2:1.2.0), libxinerama1, libxrandr2 (>= 2:1.2.99.2), libxrender1, zlib1g (>= 1:1.1.4), shared-mime-info
+Recommends: hicolor-icon-theme, libgtk2.0-bin
+Suggests: librsvg2-common, gvfs
+Conflicts: celestia (<< 1.2.4-4), eog2 (<< 1.0.1-4), gcin (<< 1.3.4-2), gimp1.3 (<< 1.3.7-1.1), glabels (<< 2.1.3-3), gnome-panel2 (<< 2.0.4-1), gnome-themes (<< 2.6), gtk-im-libthai (<< 0.1.4-3), gtk-qt-engine (<< 1:0.8~svn-rev36-1), gtk2-engines (<< 1:2.8.2-2), gtk2-engines-cleanice (<< 2.4.0-1.1), gtk2-engines-crux (<< 2.6), gtk2-engines-gtk-qt (<< 1:0.7-2), gtk2-engines-highcontrast (<< 2.6), gtk2-engines-industrial (<< 0.2.32-5), gtk2-engines-lighthouseblue (<< 2.6), gtk2-engines-magicchicken (<< 1.1.1-7.1), gtk2-engines-metal (<< 2.2.0-2.1), gtk2-engines-mist (<< 2.6), gtk2-engines-pixbuf (<= 2.10), gtk2-engines-qtpixmap (<< 0.28-1.2), gtk2-engines-redmond95 (<< 2.2.0-2.1), gtk2-engines-smooth (<< 0.5.6-3), gtk2-engines-thinice (<< 2.6), gtk2-engines-ubuntulooks (<= 0.9.11-1), gtk2-engines-wonderland (<< 1.0-4), gtk2-engines-xfce (<< 2.4.0-1), gtk2.0-examples (<< 2.2.0), iiimf-client-gtk (<< 12.3.91-4), iiimgcf (<= 11.4.1870-7.3), imhangul (<< 0.9.13-5), libeel2-2.18, libgdkxft0, libginspx0 (<< 20050529-1.1), libgnomeui-0 (<= 2.14.1-3), libgtk2.0-0png3, librsvg2-common (<= 2.14.4-2), libwmf-dev (<< 0.2.8.4-5), libwmf0.2-7 (<< 0.2.8.4-5), libwxgtk2.6-0 (<< 2.6.3.2.2-1), metacity (<< 1:2.20.0-1), metatheme (<< 0.9.7-3), openoffice.org-core (<< 2.2.1-8), scim-bridge (<= 0.2.4-1), scim-bridge-client-gtk (<< 0.4.10-1.1), scim-gtk2-immodule (<< 1.4.4-8), swf-player (<< 0.3.6-2.3), tamil-gtk2im (<< 2.2-4.4), uim-gtk2.0 (<< 1:1.4.1-3), xfwm4 (<< 4.4.1-3)
+Conffiles:
+ /etc/gtk-2.0/im-multipress.conf c358838e1789c1d4e6da7f525fc922cf
+Description: The GTK+ graphical user interface library
+ The GTK+ is a multi-platform toolkit for creating graphical user
+ interfaces. Offering a complete set of widgets, the GTK+ is suitable
+ for projects ranging from small one-off tools to complete application
+ suites.
+ .
+ This package contains the shared libraries.
+
+Package: libslp1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 164
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: openslp-dfsg
+Version: 1.2.1-7.5
+Depends: libc6 (>= 2.4), debconf | debconf-2.0, net-tools
+Suggests: slpd (= 1.2.1-7.5), openslp-doc (= 1.2.1-7.5)
+Description: OpenSLP libraries
+ Service Location Protocol is an IETF standard protocol that is used to
+ discover/advertise services on the network. You can use SLP for anything
+ from locating a suitable printer on your floor to discovering what LDAP
+ directories are available in your organization.  This package provides
+ the OpenSLP run-time library package that is linked to SLP aware
+ applications. This library implements RFC 2614 - An API for Service
+ Location. Unless there is a SLP DA in the network, you must install the
+ slpd package to be able to advertise the services.
+Original-Maintainer: Ganesan Rajagopal <rganesan@xxxxxxxxxx>
+
+Package: xserver-xorg-input-evdev
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 140
+Maintainer: Ubuntu X-SWAT <ubuntu-x@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1:2.1.1-1ubuntu4
+Replaces: xserver-xorg (<< 6.8.2-35)
+Provides: xserver-xorg-input-4
+Depends: libc6 (>= 2.4), xserver-xorg-core (>= 2:1.5.99.901)
+Description: X.Org X server -- evdev input driver
+ This package provides the driver for input devices using evdev, the Linux
+ kernel's event delivery mechanism.  This driver allows for multiple keyboards
+ and mice to be treated as separate input devices.
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This package is built from the X.org xf86-input-evdev driver module.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libsnmp-base
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 2652
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: net-snmp
+Version: 5.4.1~dfsg-12ubuntu3
+Replaces: libsnmp, libsnmp-dev (<< 5.4~dfsg), libsnmp5-dev, libsnmp9-dev (<< 5.4~dfsg), quagga, snmp (<= 3.6.2-3), zebra, zebra-pj
+Provides: libsnmp
+Conflicts: libsnmp, libsnmp-dev (<< 5.4~dfsg), libsnmp5-dev, libsnmp9-dev (<< 5.4~dfsg)
+Description: SNMP (Simple Network Management Protocol) MIBs and documentation
+ The Simple Network Management Protocol (SNMP) provides a framework
+ for the exchange of management information between agents (servers)
+ and clients.
+ .
+ This package includes documentation and MIBs (Management Information
+ Bases) for the SNMP libraries, agents and applications. MIBs contain
+ a formal description of the data that can be managed using SNMP.
+ and applications.
+Homepage: http://net-snmp.sourceforge.net/
+Original-Maintainer: Net-SNMP Packaging Team <pkg-net-snmp-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: linux-restricted-modules-common
+Status: install ok installed
+Priority: optional
+Section: restricted/misc
+Installed-Size: 88
+Maintainer: Ubuntu Kernel Team <kernel-team@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: linux-restricted-modules
+Version: 2.6.28-11.15
+Depends: binutils-static
+Conffiles:
+ /etc/default/linux-restricted-modules-common 0f37a03fff02220a8110bb96f2aabaa2
+ /etc/init.d/linux-restricted-modules-common ddef6c5e83f3204939cf1759cfbb19eb
+Description: Non-free Linux 2.6.28 modules helper script
+ This package provides common restricted files for
+ linux-restricted-modules, which includes helper scripts.
+
+Package: linux-libc-dev
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 4072
+Maintainer: Ubuntu Kernel Team <kernel-team@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: linux
+Version: 2.6.28-11.42
+Replaces: dvb-dev (<< 1.0.1-6), libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), libdrm-dev, linux-kernel-headers
+Provides: linux-kernel-headers
+Conflicts: amd64-libs-dev (<= 1.1), dvb-dev (<< 1.0.1-6), libc6-dev (<< 2.3.2.ds1-6), libc6.1-dev (<< 2.3.2.ds1-6), linux-kernel-headers
+Description: Linux Kernel Headers for development
+ This package provides headers from the Linux kernel.  These headers
+ are used by the installed headers for GNU glibc and other system
+ libraries. They are NOT meant to be used to build third-party modules for
+ your kernel. Use linux-headers-* packages for that.
+
+Package: libthai-data
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 340
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: libthai
+Version: 0.1.9-4
+Description: Data files for Thai language support library
+ Data needed by LibThai library. It is usually automatically installed.
+Original-Maintainer: Theppitak Karoonboonyanan <thep@xxxxxxxxxxxxxx>
+Homepage: http://libthai.sourceforge.net/
+
+Package: libxpm4
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 124
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxpm
+Version: 1:3.5.7-1
+Depends: libc6 (>= 2.6.1-1), libx11-6, x11-common
+Description: X11 pixmap library
+ libXpm provides support and common operation for the XPM pixmap format, which
+ is commonly used in legacy X applications.  XPM is an extension of the
+ monochrome XBM bitmap specificied in the X protocol.
+ .
+ More information about X.Org can be found at:
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: tar
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: utils
+Installed-Size: 2244
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.20-1
+Replaces: cpio
+Pre-Depends: libc6 (>= 2.7)
+Suggests: bzip2, ncompress
+Conflicts: cpio (<= 2.4.2-38)
+Conffiles:
+ /etc/rmt 3c58b7cd13da1085eff0acc6a00f43c7
+Description: GNU version of the tar archiving utility
+ Tar is a program for packaging a set of files as a single archive in tar
+ format.  The function it performs is conceptually similar to cpio, and to
+ things like PKZIP in the DOS world.  It is heavily used by the Debian package
+ management system, and is useful for performing system backups and exchanging
+ sets of files with others.
+Original-Maintainer: Bdale Garbee <bdale@xxxxxxx>
+
+Package: file
+Status: install ok installed
+Priority: standard
+Section: utils
+Installed-Size: 140
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 4.26-2ubuntu3
+Depends: libc6 (>= 2.4), libmagic1 (= 4.26-2ubuntu3), zlib1g (>= 1:1.1.4)
+Conffiles:
+ /etc/magic.mime 272913026300e7ae9b5e2d51f138e674
+ /etc/magic 272913026300e7ae9b5e2d51f138e674
+Description: Determines file type using "magic" numbers
+ File tests each argument in an attempt to classify it. There are three sets of
+ tests, performed in this order: filesystem tests, magic number tests, and
+ language tests. The first test that succeeds causes the file type to be
+ printed.
+ .
+ Starting with version 4, the file command is not much more than a wrapper
+ around the "magic" library.
+Homepage: http://www.darwinsys.com/file/
+Original-Maintainer: Daniel Baumann <daniel@xxxxxxxxxx>
+
+Package: gdebi-core
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 520
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: gdebi
+Version: 0.4.9
+Replaces: gdebi (<< 0.2ubuntu3)
+Depends: python, python-central (>= 0.6.11), python-apt (>= 0.7.0)
+Conflicts: gdebi (<< 0.2ubuntu3)
+Description: Simple tool to install deb files
+ gdebi lets you install local deb packages resolving and installing
+ its dependencies. apt does the same, but only for remote (http, ftp)
+ located packages.
+ .
+ This package contains the libraries and command-line utility.
+Original-Maintainer: Gustavo Franco <stratus@xxxxxxxxxx>
+Python-Version: current
+
+Package: gcc-4.3
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 4724
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 4.3.3-5ubuntu4
+Provides: c-compiler
+Depends: gcc-4.3-base (= 4.3.3-5ubuntu4), cpp-4.3 (= 4.3.3-5ubuntu4), binutils (>= 2.19.1), libgcc1 (>= 1:4.3.3-5ubuntu4), libgomp1 (>= 4.3.3-5ubuntu4), libc6 (>= 2.4)
+Recommends: libc6-dev (>= 2.5)
+Suggests: gcc-4.3-multilib, libmudflap0-4.3-dev (>= 4.3.3-5ubuntu4), gcc-4.3-doc (>= 4.3.3-1), gcc-4.3-locales (>= 4.3.3-1), libgcc1-dbg, libgomp1-dbg, libmudflap0-dbg
+Description: The GNU C compiler
+ This is the GNU C compiler, a fairly portable optimizing compiler for C.
+Original-Maintainer: Debian GCC Maintainers <debian-gcc@xxxxxxxxxxxxxxxx>
+
+Package: python-gdbm
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 124
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: python-stdlib-extensions
+Version: 2.6.2-0ubuntu1
+Replaces: python2.3-gdbm, python2.4-gdbm, python2.6 (<< 2.6.1-0ubuntu6)
+Provides: python2.4-gdbm, python2.5-gdbm, python2.6-gdbm
+Depends: python (<< 2.7), python (>= 2.4), libc6 (>= 2.4), libgdbm3
+Suggests: python-gdbm-dbg
+Conflicts: python2.3-gdbm, python2.4-gdbm
+Description: GNU dbm database support for Python
+ GNU dbm database module for Python. Install this if you want to
+ create or read GNU dbm database files with Python.
+Original-Maintainer: Matthias Klose <doko@xxxxxxxxxx>
+Python-Version: 2.4, 2.5, 2.6
+
+Package: liburi-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 372
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 1.37+dfsg-1ubuntu1
+Depends: perl (>= 5.6.0-16), libmime-base64-perl, libnet-perl, data-dumper
+Suggests: libwww-perl (>= 5.41)
+Conflicts: libwww-perl (<< 5.41)
+Description: Manipulates and accesses URI strings
+ This package contains the URI.pm module with friends.  The module
+ implements the URI class.  Objects of this class represent Uniform
+ Resource Identifier (URI) references as specified in RFC 2396.
+ .
+ URI objects can be used to access and manipulate the various
+ components that make up these strings.  There are also methods to
+ combine URIs in various ways.
+ .
+ The URI class replace the URI::URL class that used to be distributed
+ with libwww-perl.  This package contains an emulation of the old
+ URI::URL interface.  The emulated URI::URL implement both the old and
+ the new interface.
+Homepage: http://search.cpan.org/dist/URI/
+Original-Maintainer: Debian Perl Group <pkg-perl-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libnl1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 336
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libnl
+Version: 1.1-3
+Replaces: libnl1-pre6, libnl1-pre8
+Depends: libc6 (>= 2.8~20080505)
+Conflicts: libnl1-pre6, libnl1-pre8
+Description: library for dealing with netlink sockets
+ This is a library for applications dealing with netlink sockets.
+ The library provides an interface for raw netlink messaging and various
+ netlink family specific interfaces.
+Original-Maintainer: Michael Biebl <biebl@xxxxxxxxxx>
+Homepage: http://people.suug.ch/~tgr/libnl/
+
+Package: libfont-afm-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 120
+Maintainer: Ubuntu MOTU Developers <ubuntu-motu@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 1.20-1
+Depends: perl (>= 5.6.0-16)
+Description: Font::AFM - Interface to Adobe Font Metrics files
+ This module implements the Font::AFM class. Objects of this class are
+ initialised from an AFM-file and allows you to obtain information
+ about the font and the metrics of the various glyphs in the font.
+ .
+ All measurements in AFM files are given in terms of units equal to
+ 1/1000 of the scale factor of the font being used. To compute actual
+ sizes in a document, these amounts should be multiplied by (scale
+ factor of font)/1000.
+Original-Maintainer: Debian Perl Group <pkg-perl-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://search.cpan.org/dist/Font-AFM/
+
+Package: foo2zjs
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 5604
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 20090217-0ubuntu4
+Replaces: foo2zjs-ppds
+Provides: foo2zjs-ppds
+Depends: libc6 (>= 2.7), mscompress, foomatic-filters (>= 4.0.0~bzr156)
+Suggests: psutils
+Breaks: udev (<< 136-1)
+Conflicts: foo2zjs-ppds
+Description: Support for printing to ZjStream-based printers
+ foo2zjs is an open source printer driver for printers that use the
+ Zenographics ZjStream wire protocol for their print data, such as the
+ Minolta magicolor 2200/2300/2430 DL, Minolta Color PageWorks/Pro L and
+ HP LaserJet 1000/1005/1018/1020/1022. These printers are often
+ erroneously referred to as "winprinters" or "GDI printers".
+ .
+ The psutils package is needed to enable n-up printing support.
+ .
+ Home Page: http://foo2zjs.rkkda.com/
+Original-Maintainer: Steffen Joeris <steffen.joeris@xxxxxxxxxxxxx>
+
+Package: librpc-xml-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 768
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 0.64-1
+Depends: libxml-parser-perl, libwww-perl (>= 5.811), perl (>= 5.6.0-16)
+Suggests: libapache2-mod-perl2
+Description: Perl module implementation of XML-RPC
+ The RPC::XML package is an implementation of XML-RPC. The module provides
+ classes for sample client and server implementations, a server designed as an
+ Apache location-handler, and a suite of data-manipulation classes that are
+ used by them.
+Original-Maintainer: Debian Perl Group <pkg-perl-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://search.cpan.org/dist/RPC-XML/
+
+Package: libotr2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 232
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libotr
+Version: 3.2.0-1
+Replaces: libotr0
+Depends: libc6 (>= 2.4), libgcrypt11 (>= 1.2.2)
+Suggests: libotr2-bin (>= 3.2.0-1)
+Description: Off-the-Record Messaging library
+ Off-the-Record (OTR) Messaging Library and Toolkit
+ .
+ OTR allows you to have private conversations over IM by providing:
+  - Encryption
+    - No one else can read your instant messages.
+  - Authentication
+    - You are assured the correspondent is who you think it is.
+  - Deniability
+    - The messages you send do _not_ have digital signatures that are
+      checkable by a third party.  Anyone can forge messages after a
+      conversation to make them look like they came from you.  However,
+      _during_ a conversation, your correspondent is assured the messages
+      he sees are authentic and unmodified.
+  - Perfect forward secrecy
+    - If you lose control of your private keys, no previous conversation
+      is compromised.
+Original-Maintainer: Thibaut VARENE <varenet@xxxxxxxxxx>
+
+Package: libfribidi0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 160
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: fribidi
+Version: 0.10.9-1
+Depends: libc6 (>= 2.7-1)
+Description: Free Implementation of the Unicode BiDi algorithm
+ FriBiDi is a BiDi algorithm implementation for Hebrew and/or Arabic
+ languages.
+Original-Maintainer: Debian Hebrew Packaging Team <debian-hebrew-package@xxxxxxxxxxxxxxxxxxxxxxx>
+Homepage: http://www.fribidi.org/
+
+Package: zlib1g
+Status: install ok installed
+Priority: required
+Section: libs
+Installed-Size: 168
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: zlib
+Version: 1:1.2.3.3.dfsg-12ubuntu2
+Provides: libz1
+Depends: libc6 (>= 2.4)
+Conflicts: zlib1 (<= 1:1.0.4-7)
+Description: compression library - runtime
+ zlib is a library implementing the deflate compression method found
+ in gzip and PKZIP.  This package includes the shared library.
+Original-Maintainer: Mark Brown <broonie@xxxxxxxxxx>
+
+Package: xserver-xorg
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 648
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: xorg
+Version: 1:7.4~5ubuntu18
+Replaces: x11-common (<< 1:7.3+11), xserver-common (<< 7)
+Depends: xserver-xorg-core (>= 2:1.5.99.901), xserver-xorg-video-all | xserver-xorg-video-5, xserver-xorg-input-all | xserver-xorg-input-4, xserver-xorg-input-evdev, hal, libc6 (>= 2.3.4), debconf (>= 0.5) | debconf-2.0, xkb-data (>= 1.4), x11-xkb-utils
+Recommends: libgl1-mesa-dri, udev
+Conflicts: x11-common (<< 1:7.3+11), xserver-common (<< 7), xserver-xfree86 (<< 6.8.2.dfsg.1-1)
+Description: the X.Org X server
+ This package depends on the full suite of the server and drivers for the
+ X.Org X server, as well as providing a configuration infrastructure to manage
+ xorg.conf.  It does not provide the actual server itself, but removing it
+ is strongly discouraged.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: bogofilter
+Status: install ok installed
+Priority: optional
+Section: mail
+Installed-Size: 20
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.1.7-1ubuntu1
+Depends: bogofilter-bdb
+Description: a fast Bayesian spam filter (dummy package)
+ This package implements a fast Bayesian spam filter along the lines suggested
+ by Paul Graham in his article "A Plan For Spam".
+ .
+ This version substantially improves on Paul's proposal by doing smarter
+ lexical analysis.  In particular, hostnames and IP addresses are retained
+ as recognition features rather than broken up. Various kinds of MTA
+ cruft such as dates and message-IDs are discarded so as not to bloat
+ the word lists.
+Original-Maintainer: Clint Adams <schizo@xxxxxxxxxx>
+
+Package: libgd2-noxpm
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 636
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libgd2
+Version: 2.0.36~rc1~dfsg-3ubuntu1
+Provides: libgd2
+Depends: libc6 (>= 2.4), libfreetype6 (>= 2.3.5), libjpeg62, libpng12-0 (>= 1.2.13-4), zlib1g (>= 1:1.1.4)
+Suggests: libgd-tools
+Conflicts: libgd2, libgd2-xpm
+Description: GD Graphics Library version 2 (without XPM support)
+ GD is a graphics library. It allows your code to quickly draw images
+ complete with lines, arcs, text, multiple colours, cut and paste from
+ other images, flood fills, and write out the result as a PNG file.
+ This is particularly useful in World Wide Web applications, where PNG is
+ one of the formats accepted for inline images by most browsers.
+ .
+ This is the runtime package of the library, built without XPM (X pixmap)
+ or fontconfig support.
+Homepage: http://www.libgd.org/
+Original-Maintainer: GD team <pkg-gd-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: hal-cups-utils
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 152
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.6.19+git20090217-0ubuntu7
+Depends: libc6 (>= 2.4), libcups2 (>= 1.3.8), libdbus-1-3 (>= 1.0.2), libhal1 (>= 0.5.8.1), cups, python, python-cups, python-cupshelpers (>= 1.1.3+git20090217), hal, python-dbus, python-gobject, python-usb
+Recommends: hplip, usbutils
+Description: CUPS integration with HAL
+ This package provides a CUPS backend for browsing local printers
+ using HAL and a utility based on lpadmin for adding, configuring and
+ removing printers using HAL UDIs.
+
+Package: python-xkit
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 188
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: x-kit
+Version: 0.4.2
+Depends: python, python-central (>= 0.6.7)
+Description: library for the manipulation of the xorg.conf
+ X-Kit is library for the manipulation of the xorg.conf.
+Original-Maintainer: Alberto Milone (tseliot) <albertomilone@xxxxxxxx>
+Python-Version: all
+
+Package: libmailtools-perl
+Status: install ok installed
+Priority: optional
+Section: perl
+Installed-Size: 316
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 2.04-1
+Replaces: mailtools (<= 1.15-1)
+Provides: libmail-perl, mailtools
+Depends: perl (>= 5.6.0-16), libnet-perl, libtimedate-perl
+Conflicts: mailtools (<= 1.15-1)
+Description: Manipulate email in perl programs
+ This is a set of perl modules which provide an easy interface to
+ manipulating email in an object-oriented fashion.
+Original-Maintainer: Anibal Monsalve Salazar <anibal@xxxxxxxxxx>
+Homepage: http://search.cpan.org/~markov/MailTools-2.02/
+
+Package: libxrandr2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 96
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxrandr
+Version: 2:1.3.0-1build1
+Depends: libc6 (>= 2.1.3), libx11-6, libxext6, libxrender1
+Description: X11 RandR extension library
+ libXrandr provides an X Window System client interface to the RandR
+ extension to the X protocol.
+ .
+ The RandR extension allows for run-time configuration of display attributes
+ such as resolution, rotation, and reflection.
+ .
+ More information about X.Org can be found at:
+ <URL:http://www.X.org>
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This module can be found at
+ git://anongit.freedesktop.org/git/xorg/lib/libXrandr
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: os-prober
+Status: install ok installed
+Priority: extra
+Section: utils
+Installed-Size: 168
+Maintainer: Ubuntu Installer Team <ubuntu-installer@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.29ubuntu2
+Description: utility to detect other OSes on a set of drives
+ This package detects other OSes available on a system and outputs the
+ results in a generic machine-readable format.
+Original-Maintainer: Debian Install System Team <debian-boot@xxxxxxxxxxxxxxxx>
+
+Package: libglu1-mesa
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 532
+Maintainer: Ubuntu X-SWAT <ubuntu-x@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: mesa
+Version: 7.4-0ubuntu3
+Replaces: libglu1
+Provides: libglu1
+Depends: libc6 (>= 2.3.4), libgcc1 (>= 1:4.1.1), libgl1-mesa-glx | libgl1, libstdc++6 (>= 4.1.1)
+Pre-Depends: dpkg (>= 1.14.12ubuntu3)
+Conflicts: libglu1, mesag3 (<< 5.0.0-1), xlibmesa3
+Description: The OpenGL utility library (GLU)
+ GLU offers simple interfaces for building mipmaps; checking for the
+ presence of extensions in the OpenGL (or other libraries which follow
+ the same conventions for advertising extensions); drawing
+ piecewise-linear curves, NURBS, quadrics and other primitives
+ (including, but not limited to, teapots); tesselating surfaces; setting
+ up projection matrices and unprojecting screen coordinates to world
+ coordinates.
+ .
+ On Linux, this library is also known as libGLU or libGLU.so.1.
+ .
+ This package provides the SGI implementation of GLU shipped with the
+ Mesa package (ergo the "-mesa" suffix).
+Homepage: http://mesa3d.sourceforge.net/
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: python-newt
+Status: install ok installed
+Priority: standard
+Section: python
+Installed-Size: 192
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: newt
+Version: 0.52.2-11.3ubuntu3
+Provides: python2.5-newt, python2.6-newt
+Depends: libnewt0.52 (= 0.52.2-11.3ubuntu3), python (<< 2.7), python (>= 2.5), python-central (>= 0.6.11)
+Suggests: python-newt-dbg
+Description: A NEWT module for Python
+ This module allows you to built a text UI for your Python scripts
+ using newt.
+Original-Maintainer: Alastair McKinstry <mckinstry@xxxxxxxxxx>
+Python-Version: 2.5, 2.6
+
+Package: gsfonts
+Status: install ok installed
+Priority: optional
+Section: text
+Installed-Size: 4792
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 1:8.11+urwcyr1.0.7~pre44-3
+Depends: defoma (>= 0.11.10)
+Conflicts: gs (<< 5.50-5), gs-aladdin (<< 6.50-4), gsfonts-x11 (<< 0.13)
+Conffiles:
+ /etc/defoma/hints/gsfonts.hints 593bec3fae2b36f13707f3f84f8f21e6
+Description: Fonts for the Ghostscript interpreter(s)
+ These are free look-alike fonts of the Adobe PostScript fonts.
+ Recommended for all flavors of Ghostscript (gs-gpl, gs-afpl and gs-esp).
+Original-Maintainer: Masayuki Hatta (mhatta) <mhatta@xxxxxxxxxx>
+
+Package: adduser
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 888
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 3.110ubuntu5
+Replaces: manpages-it (<< 0.3.4-2), manpages-pl (<= 20051117-1)
+Depends: perl-base (>= 5.6.0), passwd (>= 1:4.0.12), debconf | debconf-2.0
+Suggests: liblocale-gettext-perl, perl-modules, ecryptfs-utils (>= 67-1)
+Conffiles:
+ /etc/deluser.conf 527e6a57d0bc9f7c1b1aca2071f3da00
+Description: add and remove users and groups
+ This package includes the 'adduser' and 'deluser' commands for creating
+ and removing users.
+ .
+  - 'adduser' creates new users and groups and adds existing users to
+    existing groups;
+  - 'deluser' removes users and groups and removes users from a given
+    group.
+ .
+ Adding users with 'adduser' is much easier than adding them manually.
+ Adduser will choose appropriate UID and GID values, create a home
+ directory, copy skeletal user configuration, and automate setting
+ initial values for the user's password, real name and so on.
+ .
+ Deluser can back up and remove users' home directories
+ and mail spool or all the files they own on the system.
+ .
+ A custom script can be executed after each of the commands.
+ .
+  Development mailing list:
+    http://lists.alioth.debian.org/mailman/listinfo/adduser-devel/
+Homepage: http://alioth.debian.org/projects/adduser/
+Original-Maintainer: Debian Adduser Developers <adduser-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libxcb1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 164
+Maintainer: Ubuntu X-SWAT <ubuntu-x@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxcb
+Version: 1.1.93-0ubuntu3
+Depends: libc6 (>= 2.4), libxau6, libxdmcp6
+Breaks: libxcb-xlib0
+Description: X C Binding
+ This package contains the library files needed to run software using libxcb,
+ the X C Binding.
+ .
+ The XCB library provides an interface to the X Window System protocol,
+ designed to replace the Xlib interface.  XCB provides several advantages over
+ Xlib:
+ .
+  * Size: small library and lower memory footprint
+  * Latency hiding: batch several requests and wait for the replies later
+  * Direct protocol access: one-to-one mapping between interface and protocol
+  * Thread support: access XCB from multiple threads, with no explicit locking
+  * Easy creation of new extensions: automatically generates interface from
+    machine-parsable protocol descriptions
+Homepage: http://xcb.freedesktop.org
+Original-Maintainer: XCB Developers <xcb@xxxxxxxxxxxxxxxxxxxxx>
+
+Package: python-support
+Status: install ok installed
+Priority: standard
+Section: python
+Installed-Size: 216
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 0.8.7ubuntu4
+Depends: python (>= 2.5), dpkg (>= 1.14.19)
+Conflicts: debhelper (<< 5.0.38)
+Description: automated rebuilding support for Python modules
+ This package contains the 'update-python-modules' script, which takes
+ care of byte-compilation of Python-only modules.
+ .
+ Private modules are automatically rebuilt upon major Python upgrades,
+ avoiding the need for strong dependencies.
+ .
+ Public modules are automatically made available for all installed
+ Python versions.
+Original-Maintainer: Josselin Mouette <joss@xxxxxxxxxx>
+
+Package: xserver-xorg-video-all
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 24
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: xorg
+Version: 1:7.4~5ubuntu18
+Replaces: xserver-xorg-driver-all
+Depends: xserver-xorg-video-apm, xserver-xorg-video-ark, xserver-xorg-video-ati, xserver-xorg-video-chips, xserver-xorg-video-cirrus, xserver-xorg-video-fbdev, xserver-xorg-video-geode, xserver-xorg-video-i128, xserver-xorg-video-i740, xserver-xorg-video-intel, xserver-xorg-video-mga, xserver-xorg-video-neomagic, xserver-xorg-video-nv, xserver-xorg-video-rendition, xserver-xorg-video-s3, xserver-xorg-video-s3virge, xserver-xorg-video-savage, xserver-xorg-video-siliconmotion, xserver-xorg-video-sis, xserver-xorg-video-sisusb, xserver-xorg-video-tdfx, xserver-xorg-video-trident, xserver-xorg-video-tseng, xserver-xorg-video-vesa, xserver-xorg-video-openchrome, xserver-xorg-video-voodoo, xserver-xorg-video-vmware, xserver-xorg-video-v4l, x11-common
+Description: the X.Org X server -- output driver metapackage
+ This package depends on the full suite of output drivers for the X.Org X server
+ (Xorg).  It does not provide any drivers itself, and may be removed if you wish
+ to only have certain drivers installed.
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: locales
+Status: install ok installed
+Priority: important
+Section: libs
+Installed-Size: 8796
+Maintainer: Martin Pitt <martin.pitt@xxxxxxxxxx>
+Architecture: all
+Source: langpack-locales
+Version: 2.9+cvs20090214-7
+Replaces: base-config, belocs-locale-data, belocs-locales-bin, libc6 (<< 2.3.6-0ubuntu6), libc6.1 (<< 2.3.6-0ubuntu6)
+Depends: libc6 (>= 2.9-0ubuntu10) | libc6.1 (>= 2.9-0ubuntu10)
+Conflicts: base-config, belocs-locale-data
+Conffiles:
+ /etc/locale.alias 6ac3cbee43012440edc6bcbade0a61ce
+Description: common files for locale support
+ This package provides support for localized environments (locales).
+ It installs character and transliteration maps, provides the POSIX
+ locale definition and provides common scripts for language pack
+ handling.
+ .
+ The actual locale definitions are not part of this package, these are
+ shipped in the language packs and are installed and removed
+ automatically.
+
+Package: update-manager-core
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 4548
+Maintainer: Michael Vogt <michael.vogt@xxxxxxxxxx>
+Architecture: i386
+Source: update-manager
+Version: 1:0.111.7
+Replaces: update-manager (<< 1:0.93.7)
+Depends: python (<< 2.7), python (>= 2.5), python-central (>= 0.6.11), python2.6, python-apt (>= 0.7.5), lsb-release, python-gnupginterface
+Recommends: update-motd
+Conflicts: computer-janitor (<= 1.11-0ubuntu1), update-manager (<< 1:0.93.7)
+Conffiles:
+ /etc/update-manager/meta-release 834e015e99673a6e3b0f31f6a511355f
+ /etc/update-manager/release-upgrades 96356119f3ed9c72c9bae2ffae5fb1be
+Description: manage release upgrades
+ This is the core of update-manager and the release upgrader
+Python-Version: 2.5, 2.6
+
+Package: python2.6
+Status: install ok installed
+Priority: optional
+Section: python
+Installed-Size: 9320
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 2.6.2-0ubuntu1
+Provides: python2.6-celementtree, python2.6-cjkcodecs, python2.6-ctypes, python2.6-elementtree, python2.6-wsgiref
+Depends: python2.6-minimal (= 2.6.2-0ubuntu1), mime-support, libbz2-1.0, libc6 (>= 2.7), libdb4.7, libncursesw5 (>= 5.6+20071006-3), libreadline5 (>= 5.2), libsqlite3-0 (>= 3.6.10), libssl0.9.8 (>= 0.9.8f-5)
+Suggests: python2.6-doc, python2.6-profiler, binutils
+Description: An interactive high-level object-oriented language (version 2.6)
+ Version 2.6 of the high-level, interactive object oriented language,
+ includes an extensive class library with lots of goodies for
+ network programming, system administration, sounds and graphics.
+Original-Maintainer: Matthias Klose <doko@xxxxxxxxxx>
+Python-Version: 2.6
+
+Package: ed
+Status: install ok installed
+Priority: important
+Section: editors
+Installed-Size: 140
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.7-3ubuntu1
+Depends: libc6 (>= 2.4)
+Description: The classic unix line editor
+ ed is a line-oriented text editor.  It is used to
+ create, display, modify and otherwise manipulate text
+ files.
+ .
+ red is a restricted ed: it can only edit files in the
+ current directory and cannot execute shell commands.
+Original-Maintainer: Martin Zobel-Helas <zobel@xxxxxxxxxx>
+
+Package: manpages
+Status: install ok installed
+Priority: important
+Section: doc
+Installed-Size: 1016
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 3.15-1
+Replaces: bind, rsh-server (<< 0.10-7)
+Suggests: man-browser
+Description: Manual pages about using a GNU/Linux system
+ This package contains GNU/Linux manual pages for these sections:
+  4 = Devices (e.g. hd, sd).
+  5 = File formats and protocols, syntaxes of several system
+      files (e.g. wtmp, /etc/passwd, nfs).
+  7 = Conventions and standards, macro packages, etc.
+      (e.g. nroff, ascii).
+ .
+ Sections 1, 6 and 8 are provided by the respective applications. This
+ package only includes the intro man page describing the section.
+ .
+ The man pages describe syntaxes of several system files.
+Original-Maintainer: Martin Schulze <joey@xxxxxxxxxx>
+
+Package: binutils-static
+Status: install ok installed
+Priority: optional
+Section: devel
+Installed-Size: 1416
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: binutils
+Version: 2.19.1-0ubuntu3
+Description: statically linked binutils tools
+ This package contains statically linked binutils tools used
+ for linking kernel modules needed to mount /usr or /.  At the moment,
+ it only contains ld.
+Original-Maintainer: Matthias Klose <doko@xxxxxxxxxx>
+
+Package: ttf-indic-fonts-core
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 1612
+Maintainer: Ubuntu MOTU Developers <ubuntu-motu@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: ttf-indic-fonts
+Version: 1:0.5.4ubuntu2
+Depends: defoma
+Suggests: xserver-xfree86 | xserver | xfs, x-ttcidfont-conf
+Conffiles:
+ /etc/defoma/hints/ttf-indic-fonts-core.hints adc3f98d17419004c6246b6852fa7ac4
+Description: Core collection of free Indian language fonts
+ This is a set of TrueType fonts released under the GNU General
+ Public License for all the various Indian languages. For each language
+ only one font is provided in this package. For additional fonts, please
+ install the ttf-$language-fonts packages, or the ttf-indic-fonts
+ meta package to get all fonts installed.
+ .
+ Fonts shipped with this package are:
+ Bengali: MuktiNarrow-n, MuktiNarrow-b
+ Devanagari: lohit_hi
+ Gujarati: lohit_gu
+ Kannada: Malige-n, Malige-b
+ Malayalam: Rachana
+ Oriya: utkal
+ Punjabi: lohit_pa
+ Tamil: lohit_ta
+ Telugu: Venama
+Homepage: http://debian-in.org/
+Original-Maintainer: Debian-IN Team <debian-in-workers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: tasksel
+Status: install ok installed
+Priority: important
+Section: admin
+Installed-Size: 892
+Maintainer: Ubuntu Installer Team <ubuntu-installer@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 2.73ubuntu18
+Depends: debconf (>= 0.5) | debconf-2.0, debconf (>= 1.5.5) | cdebconf (>= 0.106), liblocale-gettext-perl, apt (>= 0.6.45ubuntu14), aptitude (>= 0.2.15-1), tasksel-data
+Conflicts: base-config (<< 2.32), debconf (<< 1.4.27)
+Description: Tool for selecting tasks for installation on Debian systems
+ This package provides 'tasksel', a simple interface for users who
+ want to configure their system to perform a specific task.
+Original-Maintainer: Debian Install System Team <debian-boot@xxxxxxxxxxxxxxxx>
+
+Package: pppconfig
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 900
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 2.3.18ubuntu2
+Replaces: manpages-fr (<< 2.39.1-5)
+Depends: ppp (>= 2.3.7), whiptail | dialog, lsb-base (>= 1.3-9ubuntu3)
+Conflicts: nscd (<< 2.3.2.ds1-14)
+Conffiles:
+ /etc/ppp/ip-up.d/0dns-up b6bca8a403a34713eb6e7018a02e032c
+ /etc/ppp/ip-down.d/0dns-down c54aa38483b4467430dd1c15ba9f4a49
+ /etc/init.d/dns-clean 0891334491535dc069295640056d692d
+Description: A text menu based utility for configuring ppp
+ It provides extensive explanations at each step.  pppconfig supports
+ PAP, CHAP, and chat methods of authentication.  It uses the standard
+ ppp configuration files and sets ppp up so that the standard pon and
+ poff commands can be used to control ppp.
+ Some features supported by pppconfig are:
+  - Multiple ISPs with separate nameservers.
+  - Modem detection.
+  - Dynamic DNS.
+  - Dial on demand.
+Original-Maintainer: John Hasler <jhasler@xxxxxxxxxx>
+
+Package: libgcc1
+Status: install ok installed
+Priority: required
+Section: libs
+Installed-Size: 92
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: gcc-4.3 (4.3.3-5ubuntu4)
+Version: 1:4.3.3-5ubuntu4
+Depends: gcc-4.3-base (= 4.3.3-5ubuntu4), libc6 (>= 2.2.4)
+Description: GCC support library
+ Shared version of the support library, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or
+ special needs for some languages.
+Original-Maintainer: Debian GCC Maintainers <debian-gcc@xxxxxxxxxxxxxxxx>
+
+Package: psfontmgr
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 172
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: defoma
+Version: 0.11.10-0.2ubuntu1
+Depends: defoma (>= 0.9.1), whiptail | dialog, perl
+Conflicts: defoma-ps, scigraphica-common (<= 0.7.1-3)
+Description: PostScript font manager -- part of Defoma, Debian Font Manager
+ psfontmgr manages PostScript fonts through the Defoma framework. It
+ registers the name of available PostScript fonts to Defoma in
+ postscript category, so applications which output a postscript file
+ have all the available PostScript fonts in their font-choosing menus.
+ .
+ It also provides a tool named defoma-psfont-installer, which registers
+ PostScript fonts installed in a PostScript printer. This tool benefits
+ those who want to print a PostScript file with the printer fonts and
+ have the printer fonts appear in a font-choosing menu.
+Original-Maintainer: Angus Lees <gus@xxxxxxxxxx>
+
+Package: libck-connector0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 112
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: consolekit
+Version: 0.3.0-2ubuntu3
+Depends: libc6 (>= 2.3.4), libdbus-1-3 (>= 1.0.2)
+Description: ConsoleKit libraries
+ ConsoleKit is a system daemon for tracking what users are logged
+ into the system and how they interact with the computer (e.g.
+ which keyboard and mouse they use).
+ .
+ This package provides a convenience library which simplifies the access to
+ ConsoleKit.
+Homepage: http://www.freedesktop.org/wiki/Software/ConsoleKit
+Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libdebconfclient0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 88
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: cdebconf
+Version: 0.139
+Depends: libc6 (>= 2.4)
+Description: Debian Configuration Management System (C-implementation)
+ Debconf is a configuration management system for Debian packages. It is
+ used by some packages to prompt you for information before they are
+ installed. This is a reimplementation of the original debconf version
+ in C.
+ .
+ This is the libraries needed by libdebconfclient-dev and cdebconf.
+Original-Maintainer: Debian Install System Team <debian-boot@xxxxxxxxxxxxxxxx>
+
+Package: libxcomposite1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 64
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxcomposite
+Version: 1:0.4.0-3
+Depends: libc6 (>= 2.1.3), libx11-6, libxext6, libxfixes3 (>= 1:4.0.1)
+Description: X11 Composite extension library
+ libXcomposite provides an X Window System client interface to the Composite
+ extension to the X protocol.
+ .
+ The Composite extension allows clients called compositing managers to control
+ the final drawing of the screen.  Rendering is done into an off-screen buffer.
+ .
+ More information about X.Org can be found at:
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+ .
+ This module can be found at
+ git://anongit.freedesktop.org/git/xorg/lib/libXcomposite
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: readahead
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 156
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: readahead-list
+Version: 1:0.20050517.0220-1ubuntu5
+Depends: libc6 (>= 2.4)
+Conffiles:
+ /etc/readahead/boot f7a07e1d55352d7bed767aa0a5e8c5ad
+ /etc/readahead/desktop 324e89a3e0aec04d2d8f2d549498c6de
+ /etc/init.d/readahead c8aeda58528ad1321b6b66913af26909
+ /etc/init.d/readahead-desktop d999c50a1ab8730326085b2d35755b5a
+ /etc/init.d/stop-readahead 84904d2000d620110345f3168f2a833f
+Description: read files into the page cache
+ readahead-list is an updated and enhanced version of the original readahead
+ utility.
+ .
+ It allows the user to specify a set of files to be read into the page cache
+ to accelerate first time loading of programs, typically during the boot
+ sequence.
+Original-Maintainer: Petter Reinholdtsen <pere@xxxxxxxxxx>
+
+Package: libklibc
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 132
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: klibc
+Version: 1.5.14-1~exp1ubuntu2
+Description: minimal libc subset for use with initramfs
+ klibc is intended to be a minimalistic libc subset for use with
+ initramfs.  It is deliberately written for small size, minimal
+ entanglement, and portability, not speed.  It is definitely a work in
+ progress, and a lot of things are still missing.
+Original-Maintainer: maximilian attems <maks@xxxxxxxxxx>
+
+Package: bluez-gstreamer
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 184
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: bluez
+Version: 4.32-0ubuntu4
+Replaces: bluez-audio
+Depends: libbluetooth3 (>= 4.9), libc6 (>= 2.4), libglib2.0-0 (>= 2.16.0), libgstreamer-plugins-base0.10-0 (>= 0.10.0), libgstreamer0.10-0 (>= 0.10.14), libxml2 (>= 2.6.27)
+Description: Bluetooth gstreamer support
+ This package contains a plugin to operate with with gstreamer applications.
+ .
+ BlueZ is the official Linux Bluetooth protocol stack. It is an Open Source
+ project distributed under GNU General Public License (GPL).
+Homepage: http://www.bluez.org
+
+Package: bluetooth
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 40
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: bluez
+Version: 4.32-0ubuntu4
+Depends: bluez
+Recommends: bluez-alsa, bluez-cups, bluez-gstreamer
+Description: Bluetooth support
+ This package provides all of the different plugins supported
+ by the Bluez bluetooth stack.
+Homepage: http://www.bluez.org
+
+Package: libxv1
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 76
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxv
+Version: 2:1.0.4-1
+Depends: libc6 (>= 2.4), libx11-6, libxext6
+Description: X11 Video extension library
+ libXv provides an X Window System client interface to the XVideo
+ extension to the X protocol.
+ .
+ The XVideo extension allows for accelerated drawing of videos.  Hardware
+ adaptors are exposed to clients, which may draw in a number of colourspaces,
+ including YUV.
+ .
+ More information about X.Org can be found at:
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: libwmf0.2-7
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 532
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libwmf
+Version: 0.2.8.4-6ubuntu1
+Depends: libc6 (>= 2.4), libexpat1 (>= 1.95.8), libfreetype6 (>= 2.3.5), libjpeg62, libpng12-0 (>= 1.2.13-4), libx11-6, zlib1g (>= 1:1.1.4), defoma (>= 0.11), gsfonts
+Suggests: libwmf0.2-7-gtk
+Description: Windows metafile conversion library
+ Windows metafile (WMF) is a picture format used by many Windows
+ programs, e.g. Microsoft Word.  libwmf is a library for interpreting
+ metafile images and either displaying them using X or converting them
+ to standard formats such as PNG, JPEG, PS, EPS and SVG(Z)...
+ .
+ This package contains the shared library.
+Original-Maintainer: Loic Minier <lool@xxxxxxxx>
+
+Package: hal
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 1916
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.5.12~rc1+git20090403-0ubuntu1
+Depends: libc6 (>= 2.8), libdbus-1-3 (>= 1.0.2), libdbus-glib-1-2 (>= 0.78), libexpat1 (>= 1.95.8), libgcc1 (>= 1:4.1.1), libglib2.0-0 (>= 2.16.0), libhal-storage1 (>= 0.5.11~rc2), libhal1 (>= 0.5.10), libpci3, libpolkit2 (>= 0.7), libsmbios2, libstdc++6 (>= 4.1.1), libusb-0.1-4 (>= 2:0.1.12), libvolume-id1, adduser, pciutils, usbutils, udev (>= 136-1), dbus (>= 0.61), lsb-base (>= 3.2-14), hal-info (>= 20070402), pm-utils, mount (>= 2.13), policykit (>= 0.7), consolekit (>= 0.3), acl
+Recommends: eject, smartdimmer (>= 0.8b4)
+Suggests: gnome-device-manager
+Conffiles:
+ /etc/default/hal f505ed84310d5614ac67abe95828d519
+ /etc/init.d/hal 92dd01f23587571d9b324d10709b42f0
+ /etc/hal/fdi/policy/preferences.fdi 126f8909ef391a4fae2135febb7f5d45
+ /etc/dbus-1/system.d/hal.conf 2f0dc381b96577c24ad3eadc2c61a3e6
+Description: Hardware Abstraction Layer
+ HAL provides an abstract view on hardware.
+ .
+ This abstraction layer is simply an interface that makes it possible to
+ add support for new devices and new ways of connecting devices to the
+ computer, without modifying every application that uses the device.
+ It maintains a list of devices that currently exist, and can provide
+ information about those upon request.
+Homepage: http://hal.freedesktop.org/
+Original-Maintainer: Utopia Maintenance Team <pkg-utopia-maintainers@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: ttf-lao
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 168
+Maintainer: Christian Perrier <bubulle@xxxxxxxxxx>
+Architecture: all
+Version: 0.0.20060226-2
+Depends: defoma
+Conffiles:
+ /etc/defoma/hints/ttf-lao.hints 0a0c690b0ff938a9759098642847da00
+Description: TrueType font for Lao language
+ This package includes fonts that are suitable for the display of the Lao
+ language.
+
+Package: grub
+Status: install ok installed
+Priority: optional
+Section: admin
+Installed-Size: 924
+Maintainer: Ubuntu Kernel Team <kernel-team@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 0.97-29ubuntu53
+Provides: linux-boot-loader
+Depends: libc6 (>= 2.4), libncurses5 (>= 5.6+20071006-3), grub-common, udev (>= 117-5), ucf (>= 3.004-0ubuntu2), debconf (>= 1.5.19) | cdebconf
+Suggests: grub-doc, mdadm
+Conffiles:
+ /etc/event.d/last-good-boot ff6db9cce3abeac560747db93417a212
+ /etc/default/kernel-helper-rc 7c0484debc867e5f36918b81f4fe8b32
+ /etc/kernel/prerm.d/last-good-boot bfdc7bde92db7848d0ba8d05018effb0
+Description: GRand Unified Bootloader
+ GRUB is a GPLed bootloader intended to unify bootloading across x86
+ operating systems.  In addition to loading the Linux kernel,
+ it implements the Multiboot standard, which allows for flexible loading
+ of multiple boot images (needed for modular kernels such as the GNU Hurd).
+Original-Maintainer: Grub Maintainers <pkg-grub-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libasound2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 1264
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: alsa-lib
+Version: 1.0.18-1ubuntu9
+Depends: libc6 (>= 2.7)
+Suggests: libasound2-plugins (>= 1.0.18)
+Conflicts: libasound2-plugins (<< 1.0.18)
+Conffiles:
+ /etc/ld.so.conf.d/libasound2.conf d6b2f4789e0570d3af96b43a7f7130e8
+Description: shared library for ALSA applications
+ This package contains the ALSA library and its standard
+ plugins.
+ .
+ ALSA is the Advanced Linux Sound Architecture.
+Homepage: http://www.alsa-project.org/
+Original-Maintainer: Debian ALSA Maintainers <pkg-alsa-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libgpgme11
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 636
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: gpgme1.0
+Version: 1.1.8-2ubuntu3
+Depends: libc6 (>= 2.8), libgpg-error0 (>= 1.4), libpth20 (>= 2.0.7), gnupg (>= 1.4.6-2) | gnupg2 (>= 2.0.4)
+Suggests: gpgsm
+Description: GPGME - GnuPG Made Easy
+ GPGME is a wrapper library which provides a C API to access some of the
+ GnuPG functions, such as encrypt, decrypt, sign, verify, ...
+Original-Maintainer: Jose Carlos Garcia Sogo <jsogo@xxxxxxxxxx>
+
+Package: app-install-data
+Status: install ok installed
+Priority: optional
+Section: gnome
+Installed-Size: 23360
+Maintainer: Michael Vogt <michael.vogt@xxxxxxxxxx>
+Architecture: all
+Source: app-install-data-ubuntu
+Version: 0.7.6
+Conffiles:
+ /etc/gnome-app-install/packages-whitelist f3c285e9b2c6b9ebd0dc5c38cab4678f
+Description: Ubuntu applications (data files)
+ This package contains the Ubuntu specific application data for
+ gnome-app-install, an easy to use and simple application installer.
+
+Package: libieee1284-3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 104
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libieee1284
+Version: 0.2.11-5ubuntu1
+Depends: libc6 (>= 2.4)
+Description: cross-platform library for parallel port access
+ This library was designed to ease the use of the parallel port. It will
+ automatically figure out which access method is available, depending on the
+ running kernel and the permissions of the process.
+ .
+ It handles particular queries to the devices, like fetching the Device ID of
+ a device.
+Original-Maintainer: Julien BLACHE <jblache@xxxxxxxxxx>
+
+Package: libsmbclient
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 4220
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: samba
+Version: 2:3.3.2-1ubuntu3
+Depends: libc6 (>= 2.8), libcap2 (>= 2.11), libcomerr2 (>= 1.01), libkrb53 (>= 1.6.dfsg.2), libldap-2.4-2 (>= 2.4.7), libtalloc1, libwbclient0 (>= 2:3.2.0)
+Description: shared library for communication with SMB/CIFS servers
+ This package provides a shared library that enables client applications
+ to talk to Microsoft Windows and Samba servers using the SMB/CIFS
+ protocol.
+Homepage: http://www.samba.org
+Original-Maintainer: Debian Samba Maintainers <pkg-samba-maint@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libbluetooth3
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 152
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: bluez
+Version: 4.32-0ubuntu4
+Replaces: libsdp2 (<= 1.5-2)
+Depends: libc6 (>= 2.4)
+Conflicts: libsdp2 (<= 1.5-2)
+Description: Library to use the BlueZ Linux Bluetooth stack
+ BlueZ is the official Linux Bluetooth protocol stack. It is an Open Source
+ project distributed under GNU General Public License (GPL).
+Homepage: http://www.bluez.org
+
+Package: base-files
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: admin
+Installed-Size: 452
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 5ubuntu4
+Replaces: base, lsb-release (<< 3.0-8), miscutils
+Provides: base
+Depends: base-passwd (>= 2.0.3.4), libpam-modules (>= 0.79-3ubuntu3)
+Pre-Depends: awk
+Conffiles:
+ /etc/debian_version 484cc042c65cbc34668bb467ae6437f7
+ /etc/host.conf 89408008f2585c957c031716600d5a80
+ /etc/issue 528fb9ff9e27f65ed2c24143f318660f
+ /etc/issue.net a3b81be52e75e258156f76a8f33f7e21
+ /etc/lsb-release d847881e58f13b2bbe72664e6bb6bf5b
+Description: Debian base system miscellaneous files
+ This package contains the basic filesystem hierarchy of a Debian system, and
+ several important miscellaneous files, such as /etc/debian_version,
+ /etc/host.conf, /etc/issue, /etc/motd, /etc/profile, /etc/nsswitch.conf,
+ and others, and the text of several common licenses in use on Debian systems.
+Original-Maintainer: Santiago Vila <sanvila@xxxxxxxxxx>
+
+Package: libxtrap6
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 80
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: libxtrap
+Version: 2:1.0.0-5build1
+Depends: libc6 (>= 2.4), libice6 (>= 1:1.0.0), libsm6, libx11-6, libxext6, libxt6
+Description: X11 event trapping extension library
+ libXTrap provides an interface to the DEC-XTRAP extension, which allows
+ for capture and synthesis of core input events.
+ .
+ More information about X.Org can be found at:
+ <URL:http://xorg.freedesktop.org>
+ <URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+Original-Maintainer: Debian X Strike Force <debian-x@xxxxxxxxxxxxxxxx>
+
+Package: mount
+Essential: yes
+Status: install ok installed
+Priority: required
+Section: admin
+Installed-Size: 356
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: util-linux
+Version: 2.14.2-1ubuntu4
+Pre-Depends: libc6 (>= 2.7), libselinux1 (>= 2.0.59), libsepol1 (>= 2.0.25), libvolume-id1
+Suggests: nfs-common (>= 1:1.1.0-13)
+Breaks: nfs-common (<< 1:1.1.0-7)
+Description: Tools for mounting and manipulating filesystems
+ This package provides the mount(8), umount(8), swapon(8),
+ swapoff(8), and losetup(8) commands.
+Original-Maintainer: LaMont Jones <lamont@xxxxxxxxxx>
+
+Package: pcmciautils
+Status: install ok installed
+Priority: extra
+Section: admin
+Installed-Size: 164
+Maintainer: Colin Watson <cjwatson@xxxxxxxxxx>
+Architecture: i386
+Version: 014-4ubuntu3
+Depends: udev (>= 136-1), module-init-tools (>= 3.2.2), lsb-base (>= 3.0-6), libc6 (>= 2.4), libsysfs2
+Suggests: wireless-tools
+Conffiles:
+ /etc/init.d/pcmciautils 4fa520fb20caec6c69b769e6aa8c9b93
+Description: PCMCIA utilities for Linux 2.6
+ This package provides PCMCIA initialisation tools for Linux 2.6.13-rc1 or
+ later, replacing the old pcmcia-cs tools used with earlier kernel versions.
+ PCMCIA cards are commonly used in laptops to provide expanded capabilities
+ such as network connections, modems, increased memory, etc.
+ .
+ To use PCMCIA you need to have kernel modules available to support
+ it. These are included in the stock Debian 2.6 kernel packages. You
+ will most likely also need udev, although it isn't always required.
+ .
+ The wireless-tools package is required by many wireless network adapters.
+Original-Maintainer: Colin Watson <cjwatson@xxxxxxxxxx>
+
+Package: language-pack-fr
+Status: install ok installed
+Priority: optional
+Section: translations
+Installed-Size: 36
+Maintainer: Language pack maintainers <language-packs@xxxxxxxxxx>
+Architecture: all
+Version: 1:9.04+20090413
+Replaces: language-pack-fr (<< 1:9.04+20090413), language-pack-fr-base, language-pack-gnome-fr (<< 1:9.04+20090413), language-pack-gnome-fr-base (<< 1:9.04+20090413), language-pack-kde-fr (<< 1:9.04+20090413), language-pack-kde-fr-base (<< 1:9.04+20090413)
+Depends: language-pack-fr-base (>= 1:9.04+20090413)
+Pre-Depends: dpkg (>= 1.10.27ubuntu1)
+Description: translation updates for language French
+ Translation data updates for all supported packages for:
+ French
+ .
+ language-pack-fr-base provides the bulk of translation data
+ and is updated only seldom. This package provides frequent translation
+ updates.
+ .
+ Please note that you should install language-support-fr
+ to get full support for this language.
+
+Package: libsqlite3-0
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 572
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: sqlite3
+Version: 3.6.10-1
+Depends: libc6 (>= 2.4)
+Description: SQLite 3 shared library
+ SQLite is a C library that implements an SQL database engine.
+ Programs that link with the SQLite library can have SQL database
+ access without running a separate RDBMS process.
+Original-Maintainer: Laszlo Boszormenyi (GCS) <gcs@xxxxxxxxx>
+
+Package: libtext-iconv-perl
+Status: install ok installed
+Priority: required
+Section: perl
+Installed-Size: 104
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Version: 1.7-1build1
+Depends: libc6 (>= 2.1.3), perl-base (>= 5.10.0-9.1), perlapi-5.10.0
+Description: converts between character sets in Perl
+ The iconv() family of functions from XPG4 define an API for converting
+ between character sets (e.g. UTF-8 to Latin1, EBCDIC to ASCII). They
+ are provided by libc6.
+ .
+ This package allows access to them from Perl via the Text::Iconv
+ package.
+Original-Maintainer: Anibal Monsalve Salazar <anibal@xxxxxxxxxx>
+Homepage: http://search.cpan.org/search?module=Text::Iconv
+
+Package: cups-common
+Status: install ok installed
+Priority: optional
+Section: net
+Installed-Size: 5352
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: all
+Source: cups
+Version: 1.3.9-17ubuntu1
+Replaces: cupsys-common (<< 1.3.7-6)
+Provides: cupsys-common
+Conflicts: cupsys-common (<< 1.3.7-6)
+Description: Common UNIX Printing System(tm) - common files
+ The Common UNIX Printing System (or CUPS(tm)) is a printing system and
+ general replacement for lpd and the like.  It supports the Internet
+ Printing Protocol (IPP), and has its own filtering driver model for
+ handling various document types.
+ .
+ This package provides common files for CUPS server and client packages.
+ .
+ The terms "Common UNIX Printing System" and "CUPS" are trademarks of
+ Easy Software Products (www.easysw.com), and refer to the original
+ source packages from which these packages are made.
+Original-Maintainer: Debian CUPS Maintainers <pkg-cups-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: libcups2
+Status: install ok installed
+Priority: optional
+Section: libs
+Installed-Size: 376
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: cups
+Version: 1.3.9-17ubuntu1
+Replaces: libcupsys2 (<< 1.3.7-6)
+Provides: libcupsys2
+Depends: libc6 (>= 2.4), libgnutls26 (>= 2.4.0-0), libkrb53 (>= 1.6.dfsg.2), zlib1g (>= 1:1.1.4)
+Suggests: cups-common
+Conflicts: libcupsys2 (<< 1.3.7-6)
+Description: Common UNIX Printing System(tm) - libs
+ The Common UNIX Printing System (or CUPS(tm)) is a printing system and
+ general replacement for lpd and the like.  It supports the Internet
+ Printing Protocol (IPP), and has its own filtering driver model for
+ handling various document types.
+ .
+ This package provides the base shared libraries for CUPS.
+ .
+ The terms "Common UNIX Printing System" and "CUPS" are trademarks of
+ Easy Software Products (www.easysw.com), and refer to the original
+ source packages from which these packages are made.
+Original-Maintainer: Debian CUPS Maintainers <pkg-cups-devel@xxxxxxxxxxxxxxxxxxxxxxx>
+
+Package: console-setup
+Status: install ok installed
+Priority: optional
+Section: utils
+Installed-Size: 1328
+Maintainer: Ubuntu Installer Team <ubuntu-installer@xxxxxxxxxxxxxxxx>
+Architecture: all
+Version: 1.28ubuntu8
+Depends: debconf (>= 0.5) | debconf-2.0, console-terminus (>= 4.26), xkb-data (>= 0.9), initramfs-tools (>= 0.85eubuntu12)
+Recommends: kbd (>= 1.12-15) | console-tools (>= 1:0.2.3dbs-62ubuntu10)
+Suggests: lsb-base (>= 3.0-6)
+Conflicts: lsb (<< 2.0-6), lsb-base (<< 3.0-6), lsb-core (<< 2.0-6)
+Conffiles:
+ /etc/console-setup/compose.ARMSCII-8.inc fef36b61fb8b1cacc151ad3db127f777
+ /etc/console-setup/compose.CP1251.inc fef88d8c8dd4c726498003fd3cd84a7f
+ /etc/console-setup/compose.CP1255.inc c972a2e90938657e97b643366b98b2ed
+ /etc/console-setup/compose.CP1256.inc 5ea5e4d41da7a88f742863810e86144b
+ /etc/console-setup/compose.GEORGIAN-ACADEMY.inc b6d80f40abff7e8af236796ebaca0247
+ /etc/console-setup/compose.GEORGIAN-PS.inc cf45272b6bf35a22223b132600dc36c3
+ /etc/console-setup/compose.IBM1133.inc a31102602f7e7cab9738022b6c5469ae
+ /etc/console-setup/compose.ISIRI-3342.inc 5ada7fbba750192f11fa238add232ba9
+ /etc/console-setup/compose.ISO-8859-1.inc 719a4300a50dcb168d7de921bab338e9
+ /etc/console-setup/compose.ISO-8859-10.inc e5fce59617c839b56574c9e323d34686
+ /etc/console-setup/compose.ISO-8859-11.inc ad2f3cc7ee64602a790bad8a2a989243
+ /etc/console-setup/compose.ISO-8859-13.inc 9c2f47a52091515749fefc62fc8efd63
+ /etc/console-setup/compose.ISO-8859-14.inc a19822b59629ea7af7682d9247de807f
+ /etc/console-setup/compose.ISO-8859-15.inc cfa9b04fec26afa1debc17ce09d46a0a
+ /etc/console-setup/compose.ISO-8859-16.inc 8245c19b5262d8d23ca856587739eb20
+ /etc/console-setup/compose.ISO-8859-2.inc a56cb83dbe0cd88e4deef52d966d30e4
+ /etc/console-setup/compose.ISO-8859-3.inc e70d7b634791b9c97db75bddf6dcc5fa
+ /etc/console-setup/compose.ISO-8859-4.inc 4092be9556db0ac82e96eae413f1bd47
+ /etc/console-setup/compose.ISO-8859-5.inc f861a4b0403490677e6d400f2d7129da
+ /etc/console-setup/compose.ISO-8859-6.inc 41ea36ea1c1a1c0c9bebdf0016395e1f
+ /etc/console-setup/compose.ISO-8859-7.inc aa280de25f20e82f58da707101b24d48
+ /etc/console-setup/compose.ISO-8859-8.inc 9cceaa9f3312f89aba371d3c893f4e7b
+ /etc/console-setup/compose.ISO-8859-9.inc 1893bc3994c24917c907a17ceb2f284b
+ /etc/console-setup/compose.KOI8-R.inc 8cfd7766b86e5e55d6e71d0d95519c92
+ /etc/console-setup/compose.KOI8-U.inc 217ee62f6982736276f41f760f8622f8
+ /etc/console-setup/compose.TIS-620.inc 31b73af83ef3993c128e2b983b9eaf89
+ /etc/console-setup/compose.VISCII.inc 0741db54ddb6268e476010a44f219f03
+ /etc/init.d/keyboard-setup 89388f4c432168ed5324a4f076971352
+ /etc/init.d/console-setup cb4ce82da9f297677b8723733e6e3d5a
+Description: Set up the font and the keyboard on the console
+ The package provides the Linux console with the same versatile
+ keyboard configuration that the X Window System uses.  As a result
+ there is no need to duplicate or change the keyboard files just to
+ make simple customisations such as the use of dead keys, the key
+ functioning as AltGr or Compose key, the key(s) to switch between
+ Latin and non-Latin mode, etc.
+ .
+ The package also contains console fonts supporting many of the
+ world's languages.  It provides an unified set of font faces - the
+ classic VGA, the simplistic Fixed, and the cleaned Terminus,
+ TerminusBold and TerminusBoldVGA.
+Original-Maintainer: Debian Install System Team <debian-boot@xxxxxxxxxxxxxxxx>
+
+Package: xserver-xorg-input-synaptics
+Status: install ok installed
+Priority: optional
+Section: x11
+Installed-Size: 220
+Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
+Architecture: i386
+Source: xfr

Follow ups