summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Boor <florian.boor@kernelconcepts.de>2006-08-24 16:22:50 +0000
committerFlorian Boor <florian.boor@kernelconcepts.de>2006-08-24 16:22:50 +0000
commitb9839e8807ed8dacc3052294018433e41d2aeeda (patch)
tree2610487ebac3dd1966bbe8c9fd187eea3f904a68
parenta4bbe9dd7f07b610bf275a1bce4829f18069f581 (diff)
parent7bd6b93c45c1cf31e8593b0e8ee433f5d6c5100a (diff)
merge of 0c62f25e84f8a78969b680d2d89b88b32c540d8a
and befec029b0968612722681e4b1bad74128e981d6
-rw-r--r--conf/machine/omap5912osk.conf2
-rw-r--r--contrib/feed-browser/.mtn2git_empty0
-rw-r--r--contrib/feed-browser/css/.mtn2git_empty0
-rw-r--r--contrib/feed-browser/css/feed.css84
-rw-r--r--contrib/feed-browser/index.php558
-rw-r--r--contrib/feed-browser/update.php183
-rw-r--r--packages/alsa/alsa-lib_1.0.11.bb5
-rw-r--r--packages/esound/esound-gpe_20020817.bb4
-rw-r--r--packages/mozilla/thunderbird_1.0.7.bb5
-rw-r--r--packages/xmms/xmms_1.2.10.bb32
10 files changed, 865 insertions, 8 deletions
diff --git a/conf/machine/omap5912osk.conf b/conf/machine/omap5912osk.conf
index dccc5a227b..49ea6f6b90 100644
--- a/conf/machine/omap5912osk.conf
+++ b/conf/machine/omap5912osk.conf
@@ -9,6 +9,8 @@ PREFERRED_PROVIDER_xserver = "xserver-kdrive"
PREFERRED_PROVIDER_virtual/kernel = "linux-omap1"
PREFERRED_PROVIDERS += "virtual/${TARGET_PREFIX}depmod:module-init-tools-cross"
+PREFERRED_VERSION_u-boot = "LABEL.2006.06.30.2020"
+
BOOTSTRAP_EXTRA_RDEPENDS += "modutils-collateral"
SERIAL_CONSOLE ?= "115200 ttyS0"
diff --git a/contrib/feed-browser/.mtn2git_empty b/contrib/feed-browser/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/contrib/feed-browser/.mtn2git_empty
diff --git a/contrib/feed-browser/css/.mtn2git_empty b/contrib/feed-browser/css/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/contrib/feed-browser/css/.mtn2git_empty
diff --git a/contrib/feed-browser/css/feed.css b/contrib/feed-browser/css/feed.css
new file mode 100644
index 0000000000..b1252c4f7e
--- /dev/null
+++ b/contrib/feed-browser/css/feed.css
@@ -0,0 +1,84 @@
+body
+{
+ color: #000;
+ background-color: #fff;
+ font-family: Sans;
+ padding: 0;
+ margin: 0;
+}
+
+a
+{
+ text-decoration: none;
+ color: #0066cc
+}
+
+table
+{
+ width: 100%;
+}
+
+th
+{
+ font-weight: bold;
+}
+
+td
+{
+ padding: 0 0.5em;
+ vertical-align: top;
+}
+
+#letters
+{
+ margin: 1em 0;
+ text-align: center;
+}
+
+h1
+{
+ font-size: 125%;
+}
+
+h2
+{
+ font-size: 105%;
+}
+
+#menu, #menu li
+{
+ display: inline;
+ list-style: none;
+}
+
+dt
+{
+ padding-top: 0.5em;
+}
+
+#sections
+{
+ list-style: none;
+ font-size: 0.8em;
+}
+
+.subsections
+{
+ list-style: none;
+ margin-left: -1em;
+}
+
+#page
+{
+}
+
+#left
+{
+ float: left;
+ width: 20%;
+}
+
+#right
+{
+ width: 79%;
+}
diff --git a/contrib/feed-browser/index.php b/contrib/feed-browser/index.php
new file mode 100644
index 0000000000..9b612f9fd1
--- /dev/null
+++ b/contrib/feed-browser/index.php
@@ -0,0 +1,558 @@
+<?php
+
+/*
+ * (c) Koen Kooi 2006
+ * (c) Marcin Juszkiewicz 2006
+ *
+ * This php script is intended to do the following:
+ *
+ * - have searchable webfronted for the feed like packages.ubuntu.com
+ *
+ * ToDo:
+ *
+ * - search functionality
+ * - provide feed-management functionality
+ * - allow uploading of new software
+ *
+ *
+ * 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.
+ *
+ * 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 Library General Public License along
+ * with this library; see the file COPYING.LIB. If not, write to the Free
+ * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+ * USA.
+ *
+ */
+
+error_reporting(E_ALL);
+
+define('DB_FILENAME', './feeds.db');
+
+check_database();
+
+$action = '';
+
+if(isset($_GET['action']))
+{
+ $action = $_GET['action'];
+}
+
+switch($action)
+{
+ case "details":
+ $ipkgoutput = pkgdetails ($_GET['pnm']);
+ break;
+
+ case "package":
+ $edit = $_POST['edit'];
+ $searchword = $edit['searchword'];
+ $ipkgoutput = searchpkg ("%$searchword%");
+ break;
+
+ case "section":
+ $ipkgoutput = searchsection($_GET['section']);
+ break;
+
+ case "letter":
+ $letter = $_GET['g'];
+ $ipkgoutput = searchpkg ("{$letter}%");
+ break;
+
+ default:
+ $ipkgoutput = searchpkg("a");
+ break;
+}
+
+
+?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
+ <head>
+ <title>Feed browser</title>
+ <meta http-equiv="Content-Style-Type" content="text/css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <style type="text/css" media="all">@import "css/feed.css";</style>
+ </head>
+ <body >
+ <div id="page">
+ <div id="left"><?php echo sectionslist(); ?></div>
+ <div id="right"><?php echo searchletter(); echo $ipkgoutput; ?></div>
+ </div>
+ </body>
+</html>
+<?php
+
+function db_table_exists ($db, $mytable)
+{
+ if($query = sqlite_query ($db, "SELECT name FROM sqlite_master WHERE type='table'"))
+ {
+ $tables = sqlite_fetch_all ($query, SQLITE_ASSOC);
+
+ if (!$tables)
+ {
+ return FALSE;
+ }
+ else
+ {
+ foreach ($tables as $table)
+ {
+ if ($table['name'] == $mytable)
+ {
+ return TRUE;
+ }
+ }
+ }
+ }
+
+ // function which is expected to return something need to return something always
+ return FALSE;
+}
+
+function db_query($query)
+{
+ $result = FALSE;
+
+ if($db_h = sqlite_open(DB_FILENAME))
+ {
+ if($query_h = sqlite_query ($db_h, $query))
+ {
+ $result = sqlite_fetch_all ($query_h, SQLITE_ASSOC);
+ }
+
+ sqlite_close($db_h);
+ }
+
+ return ($result);
+}
+
+function test_insert_ipkgs ($db)
+{
+
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('3541-base', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/base')
+ ");
+
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('3541-opie', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/opie')
+ ");
+
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('3541-perl', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/perl')
+ ");
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('3541-python', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/python')
+ ");
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('3541-upgrades', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/upgrades')
+ ");
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('3541-x11', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/x11')
+ ");
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('3541-machine-c7x0', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/machine/c7x0')
+ ");
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('3541-machine-spitz', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/machine/spitz')
+ ");
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('3541-machine-akita', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/machine/akita')
+ ");
+
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('3541-upgrades-machine-akita', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/upgrades/machine/akita')
+ ");
+
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('3541-upgrades-machine-c7x0', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/upgrades/machine/c7x0')
+ ");
+
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('3541-upgrades-machine-spitz', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/upgrades/machine/spitz')
+ ");
+
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('3541-upgrades-machine-tosa', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4.1/feed/upgrades/machine/tosa')
+ ");
+
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('354-base', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4/feed/base')
+ ");
+
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('354-opie', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4/feed/opie')
+ ");
+
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('354-x11', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4/feed/x11')
+ ");
+
+ sqlite_query($db,
+ "INSERT INTO feeds (f_name, f_uri)
+ VALUES ('354-upgrades', 'http://ewi546.ewi.utwente.nl/mirror/www.openzaurus.org/official/unstable/3.5.4/feed/upgrades')
+ ");
+
+}
+
+function searchletter($searchletter = '')
+{
+ $ipkgoutput = "<div id='letters'>";
+ $alfabet = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y');
+
+ foreach($alfabet as $letter)
+ {
+ if($letter == $searchletter)
+ {
+ $ipkgoutput .= sprintf(" %s |", $letter );
+ }
+ else
+ {
+ $ipkgoutput .= sprintf(" <a href='?action=letter&amp;g=%s' title='packages which names begins with \"%s\"'>%s</a> |", $letter, $letter, $letter );
+ }
+ }
+
+ $ipkgoutput .= " <a href='?action=letter&amp;g=z' title='packages which names begins with \"z\"'>z</a></div>";
+
+ return $ipkgoutput;
+}
+
+function searchpkg ($searchword)
+{
+ if($result = db_query("SELECT DISTINCT p_name,p_desc,p_section FROM packages WHERE p_name LIKE '$searchword' ORDER BY p_name ASC"))
+ {
+ return generate_list_of_packages($result);
+ }
+}
+
+function generate_list_of_packages($query_result)
+{
+ $ipkgoutput = "<table>\n";
+ $ipkgoutput .="<tr><th>Package</th><th>Section</th><th>Description</th></tr>\n";
+
+ foreach($query_result as $package)
+ {
+ if (!strstr ($package['p_name'], 'locale'))
+ {
+ if(strlen($package['p_desc']) > 40)
+ {
+ $pos = strpos($package['p_desc'],' ', 40);
+
+ if($pos)
+ {
+ $package['p_desc'] = substr($package['p_desc'], 0, $pos) . '...';
+ }
+ }
+
+ $ipkgoutput .= sprintf
+ ("<tr><td><a href='?action=details&amp;pnm=%s'>%s</a></td><td><a href=\"?action=section&amp;section=%s\">%s</a></td><td> %s</td></tr>\n",
+ urlencode($package['p_name']), $package['p_name'], $package['p_section'], $package['p_section'], htmlentities($package['p_desc']));
+ }
+
+ }
+
+ $ipkgoutput .= '</table>';
+
+ return $ipkgoutput;
+}
+
+function searchsection($section)
+{
+ if($result = db_query("SELECT DISTINCT p_name,p_desc,p_section FROM packages WHERE p_section LIKE '$section%' ORDER BY p_section ASC, p_name ASC"))
+ {
+ return generate_list_of_packages($result);
+ }
+}
+
+function pkgdetails ($package)
+{
+ $result = db_query("SELECT * FROM packages,feeds
+ WHERE packages.p_name='$package' AND feeds.f_name = packages.p_feed
+ ORDER BY packages.p_version DESC");
+
+ // display first result
+
+ if ($result)
+ {
+ $package = $result[0];
+
+ $details = sprintf("<h1>Package details for %s %s</h1>", $package['packages.p_name'], $package['packages.p_version']);
+ $details .= sprintf ("<p id='description'>%s</p>", htmlentities($package['packages.p_desc']));
+ $details .= "<dl>";
+
+ $details .= sprintf ("\n<dt>Maintainer:</dt><dd>%s</dd>", str_replace(array('@',', '), array(' at ', '<br />'), htmlentities($package['packages.p_maintainer'])));
+
+ if($package['packages.p_homepage'])
+ {
+ $details .= sprintf ("\n<dt>Homepage:</dt><dd>%s</dd>", $package['packages.p_homepage']);
+ }
+
+ if($package['packages.p_section'])
+ {
+ $details .= sprintf ("\n<dt>Section:</dt><dd><a href='?action=section&amp;section=%s'>%s</a></dd>", $package['packages.p_section'],$package['packages.p_section']);
+ }
+
+ if($package['packages.p_depends'])
+ {
+ $details .= sprintf ("\n<dt>Depends:</dt><dd>%s</dd>", addlinks ($package['packages.p_depends']));
+ }
+
+ if($package['packages.p_recommends'])
+ {
+ $details .= sprintf ("\n<dt>Recommends:</dt><dd>%s</dd>", addlinks ($package['packages.p_recommends']));
+ }
+
+ if($package['packages.p_replaces'])
+ {
+ $details .= sprintf ("\n<dt>Replaces:</dt><dd>%s</dd>", addlinks ($package['packages.p_replaces']));
+ }
+
+ if($package['packages.p_provides'])
+ {
+ $details .= sprintf ("\n<dt>Provides:</dt><dd>%s</dd>", addlinks ($package['packages.p_provides']));
+ }
+
+ if($package['packages.p_conflicts'])
+ {
+ $details .= sprintf ("\n<dt>Conflicts:</dt><dd>%s</dd>", addlinks ($package['packages.p_conflicts']));
+ }
+
+ $size = $package['packages.p_size'];
+
+ if(strlen($size) > 6)
+ {
+ $size = sprintf("%02.2f Megabytes", $size / (1024 * 1024));
+ }
+
+ if(strlen($size) > 3 && strlen($size) < 7)
+ {
+ $size = sprintf("%02.2f Kilobytes", $size / (1024 ));
+ }
+
+ if(strlen($size) < 4)
+ {
+ $size = sprintf("%s Bytes", $size);
+ }
+
+ $details .= sprintf ("\n<dt>Size:</dt><dd>%s</dd></dl>", $size);
+
+ if($package['packages.p_source'])
+ {
+ $sourcearray = explode (" ", $package['packages.p_source']);
+
+ $details .= "\n<h2>Source:</h2><ul>";
+
+ foreach ($sourcearray as $key => $source_url)
+ {
+ if (substr ($source_url, 0, 4) == "http" || substr ($source_url, 0, 3) == "ftp")
+ {
+ $url_parts = parse_url($source_url);
+
+ $details .= sprintf ("<li><a href='%s'>%s</a></li>", $source_url, array_pop(explode('/', $url_parts['path'])));
+ }
+ else
+ {
+ $details .= sprintf ("<li>%s</li>", $source_url);
+ }
+ }
+
+ $details .= '</ul>';
+
+ }
+
+ $details .= "\n<h2>Available versions and architectures:</h2><ul>\n";
+
+ foreach($result as $packages_a)
+ {
+ $details .= sprintf("\n<li><a href='%s' title='%s %s for %s'>%s %s</a> for %s</li>\n",
+ $packages_a['feeds.f_uri']."/".$packages_a['packages.p_file'],
+ $packages_a['packages.p_name'],
+ $packages_a['packages.p_version'],
+ $packages_a['packages.p_arch'],
+ $packages_a['packages.p_name'],
+ $packages_a['packages.p_version'],
+ $packages_a['packages.p_arch']);
+ }
+
+ $details .= "</ul>\n";
+ }
+ else
+ {
+ $details = "<h1>Sorry, package not found\n</h1><a href='./'>return</a>\n";
+ }
+
+ return $details;
+}
+
+function addlinks ($input)
+{
+ // split input elements up
+ $elements = preg_split ('/[\s,]+/', $input);
+
+ $offset = 0;
+
+ foreach ($elements as $element)
+ {
+ // skip version information and empty elements (shouldn't happend)
+ if (!eregi('^([0-9a-z\-]*)$', $element) OR empty($element))
+ {
+ continue;
+ }
+
+ // do we have this package in the db?
+ $result = db_query ("SELECT DISTINCT p_name FROM packages WHERE p_name='{$element}'");
+
+ if(isset($result[0]['p_name']))
+ {
+ // find position of string in line
+ $pos = strpos ($input, $element, $offset);
+ $link = sprintf("<a href=\"?action=details&amp;pnm=%s\">$element</a>", urlencode ($element));
+
+ // replace element with a link
+ $input = substr_replace ($input, $link, $pos, strlen ($element));
+
+ // update offset
+ $offset = ($pos + strlen ($link));
+ }
+ else
+ {
+ $offset += strlen ($element);
+ }
+ }
+
+
+ return $input;
+}
+
+function sectionslist()
+{
+ $ipkgoutput = '';
+
+ if($result = db_query ("SELECT DISTINCT p_section FROM packages ORDER BY p_section"))
+ {
+ $ipkgoutput = "<ul id='sections'>\n";
+
+ $section_up = $result[0]['p_section'];
+ $section_level = FALSE;
+ $opie_top = FALSE;
+
+ foreach($result as $item)
+ {
+ $section_name = $item['p_section'];
+
+ if(0 === strpos($section_name, 'opie') AND !$opie_top)
+ {
+ $opie_top = TRUE;
+
+ $section_up = 'opie';
+ }
+ elseif($opie_top AND 0 !== strpos($section_name, 'opie'))
+ {
+ $opie_top = FALSE;
+ }
+
+ if(
+ strpos($section_name, '/') // subsection
+ )
+ {
+ if(0 === strpos($section_name, $section_up . '/')) // console/network are not part of console/net
+ {
+ if(!$section_level)
+ {
+ $ipkgoutput .= '<li><ul class="subsections">';
+ }
+
+ $section_name = str_replace($section_up . '/', '', $item['p_section']);
+ $section_level = TRUE;
+ }
+ }
+ elseif($section_level)
+ {
+ $section_up = $section_name;
+ $ipkgoutput .= '</ul></li>';
+ $section_level = FALSE;
+ }
+ else
+ {
+ $section_up = $section_name;
+ }
+
+ $ipkgoutput .= sprintf ("<li><a href='?action=section&amp;section=%s' title='%s'>%s</a></li>",
+ urlencode($item['p_section']),
+ urlencode($item['p_section']),
+ $section_name);
+ }
+
+ if($section_level)
+ {
+ $ipkgoutput .= '</ul></li>';
+ }
+
+ $ipkgoutput .= "</ul>\n";
+ }
+
+ return $ipkgoutput;
+}
+
+function check_database()
+{
+ if($db = sqlite_open(DB_FILENAME))
+ {
+ //initialize db
+ if (db_table_exists ($db, 'packages') === FALSE)
+ {
+ sqlite_query ($db, "CREATE TABLE packages (
+ p_name varchar(50),
+ p_version varchar(10),
+ p_arch varchar(12),
+ p_depends varchar(50),
+ p_maintainer varchar(50),
+ p_homepage varchar(100),
+ p_section varchar(20),
+ p_replaces varchar(50),
+ p_provides varchar(50),
+ p_recommends varchar(50),
+ p_conflicts varchar(50),
+ p_size int(10),
+ p_md5 char(32),
+ p_source varchar(500),
+ p_feed varchar(20),
+ p_file varchar(100),
+ p_desc varchar(1000))");
+ }
+
+ if (db_table_exists ($db, 'feeds') === FALSE)
+ {
+ sqlite_query ($db, "CREATE TABLE feeds (
+ f_name varchar(20),
+ f_uri varchar(100),
+ f_comments varchar(500))");
+
+ test_insert_ipkgs ($db) ;
+ }
+
+ sqlite_close($db);
+ }
+}
+
+?>
diff --git a/contrib/feed-browser/update.php b/contrib/feed-browser/update.php
new file mode 100644
index 0000000000..07f4f15bc9
--- /dev/null
+++ b/contrib/feed-browser/update.php
@@ -0,0 +1,183 @@
+<?php
+/* (c) Koen Kooi 2006
+ *
+ * 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.
+ *
+ * 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 Library General Public License along
+ * with this library; see the file COPYING.LIB. If not, write to the Free
+ * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
+ * USA.
+ *
+ */
+
+
+/*
+ A package entry looks like this:
+ Package: zeroconf
+ Version: 0.9-r0
+ Depends: libc6 (>= 2.4)
+ Provides: libfontconfig-utils
+ Replaces: libfontconfig-utils
+ Conflicts: libfontconfig-utils
+ Section: net
+ Architecture: armv5te
+ Maintainer: Angstrom Developers <angstrom-dev@handhelds.org>
+ MD5Sum: b8bd197224e24759d2162091a0fa727f
+ Size: 12346
+ Filename: zeroconf_0.9-r0_armv5te.ipk
+ Source: http://www.progsoc.org/~wildfire/zeroconf/download/zeroconf-0.9.tar.gz file://zeroconf-default file://debian-zeroconf
+ Description: IPv4 link-local address allocator
+ */
+
+
+$start = time();
+$p_count = 0;
+
+define('DB_FILENAME', './feeds.db');
+
+$feeds = db_query("SELECT f_name, f_uri FROM feeds");
+
+foreach($feeds as $feed)
+{
+
+ print("Updating $feed[f_name]: $feed[f_uri]\n");
+ db_query_n("DELETE FROM packages WHERE p_feed = '$feed[f_name]'");
+
+ $count = 0;
+
+ $packagesgz_h = fopen("compress.zlib://$feed[f_uri]/Packages.gz", "r");
+ if ($packagesgz_h) {
+ while (!feof($packagesgz_h)) {
+ $buffer = fscanf($packagesgz_h, "%[^:]: %[ -~]");
+ list ($field, $value) = $buffer;
+
+
+ if($field == 'Package' && $count > 0)
+ {
+ insert_ipkgs ($package, $version, $depends, $section, $arch, $maintainer, $md5sum, $size, $file, $source, $desc,$feed[f_name], $conflicts, $provides, $replaces, $recommends);
+ unset($package, $version, $depends, $section, $arch, $maintainer, $md5sum, $size, $file, $source, $desc, $conflicts, $provides, $replaces, $recommends);
+ }
+
+
+ switch($field)
+ {
+ case 'Package':
+ $package = $value;
+ $count++;
+ break;
+ case 'Version':
+ $version = $value;
+ break;
+ case 'Depends':
+ $depends = $value;
+ break;
+ case 'Provides':
+ $provides = $value;
+ break;
+ case 'Recommends':
+ $recommends = $value;
+ break;
+ case 'Replaces':
+ $replaces = $value;
+ break;
+ case 'Conflicts':
+ $conflicts = $value;
+ break;
+ case 'Section':
+ $section = $value;
+ break;
+ case 'Architecture':
+ $arch = $value;
+ break;
+ case 'Maintainer':
+ $maintainer = str_replace("'","\"", $value);
+ break;
+ case 'MD5sum':
+ $md5sum = $value;
+ break;
+ case 'Size':
+ $size = $value;
+ break;
+ case 'Filename':
+ $file = $value;
+ break;
+ case 'Source':
+ $source = $value;
+ break;
+ case 'Description':
+ $desc = str_replace("'","\"", $value);
+ break;
+ }
+
+ }
+ insert_ipkgs ($package, $version, $depends, $section, $arch, $maintainer, $md5sum, $size, $file, $source, $desc,$feed[f_name], $conflicts, $provides, $replaces, $recommends);
+ }
+
+$p_count = $count + $p_count;
+gzclose($packagesgz_h);
+}
+//close the db
+
+$end = time();
+$difference = $end - $start;
+
+$days = floor($difference/86400);
+$difference = $difference - ($days*86400);
+
+$hours = floor($difference/3600);
+$difference = $difference - ($hours*3600);
+
+$minutes = floor($difference/60);
+$difference = $difference - ($minutes*60);
+
+$seconds = $difference;
+
+print "Added $p_count packages in $days days, $hours hours, $minutes minutes and $seconds seconds \n";
+
+
+function insert_ipkgs ($package, $version, $depends, $section, $arch, $maintainer, $md5sum, $size, $file, $source, $desc, $feed, $conflicts, $provides, $replaces, $recommends)
+{
+ db_query_n(
+ "INSERT INTO packages (p_name, p_version, p_depends, p_arch, p_maintainer, p_section, p_size, p_md5, p_source, p_desc, p_feed, p_file, p_conflicts, p_provides, p_replaces, p_recommends)
+ VALUES ('$package', '$version', '$depends', '$arch', '$maintainer', '$section', '$size', '$md5sum', '$source', '$desc', '$feed', '$file', '$conflicts', '$provides', '$replaces', '$recommends')
+ ");
+}
+
+
+function db_query($query)
+{
+ $result = FALSE;
+
+ if($db_h = sqlite_open(DB_FILENAME))
+ {
+ $query_h = sqlite_query ($db_h, $query);
+ $result = sqlite_fetch_all ($query_h, SQLITE_ASSOC);
+ sqlite_close($db_h);
+ }
+
+ return $result;
+}
+
+
+function db_query_n($query)
+{
+ $result = FALSE;
+
+ if($db_h = sqlite_open(DB_FILENAME))
+ {
+ $query_h = sqlite_query ($db_h, $query);
+ sqlite_close($db_h);
+ }
+
+ return $result;
+}
+
+
+
+?>
diff --git a/packages/alsa/alsa-lib_1.0.11.bb b/packages/alsa/alsa-lib_1.0.11.bb
index fbf1442771..ebfd793f9b 100644
--- a/packages/alsa/alsa-lib_1.0.11.bb
+++ b/packages/alsa/alsa-lib_1.0.11.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "Alsa sound library"
HOMEPAGE = "http://www.alsa-project.org"
SECTION = "libs/multimedia"
LICENSE = "GPL"
-PR = "r0"
+PR = "r1"
# configure.in sets -D__arm__ on the command line for any arm system
# (not just those with the ARM instruction set), this should be removed,
@@ -25,8 +25,9 @@ do_stage() {
install -m 0644 utils/alsa.m4 ${STAGING_DATADIR}/aclocal/
}
-PACKAGES += "libasound alsa-server alsa-conf alsa-doc alsa-dev"
+PACKAGES =+ "alsa-server libasound alsa-conf alsa-doc alsa-dev"
PACKAGES_DYNAMIC = "libasound*"
+FILES_${PN}-dbg += "${libdir}/alsa-lib/*/.debu*"
FILES_libasound = "${libdir}/libasound.so*"
FILES_alsa-server = "${bindir}"
FILES_alsa-conf = "${datadir}"
diff --git a/packages/esound/esound-gpe_20020817.bb b/packages/esound/esound-gpe_20020817.bb
index 1b98a1291e..d980ea35ca 100644
--- a/packages/esound/esound-gpe_20020817.bb
+++ b/packages/esound/esound-gpe_20020817.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "Enlightened Sound Daemon - GPE version"
SECTION = "gpe/base"
LICENSE = "GPL"
DEPENDS = "audiofile"
-PR = "r4"
+PR = "r5"
PROVIDES += "esound"
RPROVIDES += "esound"
@@ -30,4 +30,4 @@ PACKAGES =+ "esddsp esd esd-utils"
FILES_esddsp = "${bindir}/esddsp ${libdir}/libesddsp.so.*"
FILES_esd = "${bindir}/esd"
-FILES_esd-utils = "${bindir}"
+FILES_esd-utils = "${bindir}/*"
diff --git a/packages/mozilla/thunderbird_1.0.7.bb b/packages/mozilla/thunderbird_1.0.7.bb
index c3370c6f28..3527ebe93b 100644
--- a/packages/mozilla/thunderbird_1.0.7.bb
+++ b/packages/mozilla/thunderbird_1.0.7.bb
@@ -1,7 +1,7 @@
SECTION = "x11/utils"
DEPENDS += "gnupg"
RRECOMMENDS += "gnupg"
-PR = "r0"
+PR = "r1"
EMVER="0.92.0"
IPCVER="1.1.3"
@@ -15,7 +15,8 @@ http://downloads.mozdev.org/enigmail/src/ipc-${IPCVER}.tar.gz \
file://mozilla-thunderbird.png file://mozilla-thunderbird.desktop"
S = "${WORKDIR}/mozilla"
-FILES_${PN} += "${libdir}/thunderbird-${PV} ${datadir}/idl"
+FILES_${PN} += "${libdir}/thunderbird-${PV}/* ${datadir}/idl"
+FILES_${PN}-dbg += "${libdir}/thunderbird-${PV}/.debug*"
inherit mozilla
diff --git a/packages/xmms/xmms_1.2.10.bb b/packages/xmms/xmms_1.2.10.bb
index 9ee59cef29..ba6c1e115c 100644
--- a/packages/xmms/xmms_1.2.10.bb
+++ b/packages/xmms/xmms_1.2.10.bb
@@ -3,14 +3,17 @@ HOMEPAGE = "http://www.xmms.org/"
LICENSE = "GPL"
SECTION = "x11/multimedia"
# TODO add esd
-DEPENDS = "gtk+-1.2 libvorbis mikmod alsa-lib"
+DEPENDS = "gtk+-1.2 libvorbis mikmod alsa-lib libsm esound"
SRC_URI = "http://www.xmms.org/files/1.2.x/xmms-${PV}.tar.bz2 \
file://gcc4.patch;patch=1 \
file://xmms-config-dequote.patch;patch=1 \
file://acinclude.m4 \
file://xmms.sh"
-PR = "r2"
+PR = "r3"
+
+RRECOMMENDS_${PN} = "xmms-plugin-output-oss xmms-plugin-output-alsa \
+ xmms-mad xmms-tremor"
inherit autotools binconfig
@@ -35,6 +38,31 @@ do_install_append() {
install xmms/xmms_mini.xpm ${D}${datadir}/pixmaps
}
+PACKAGES_DYNAMIC = "xmms-plugin-effect-* xmms-plugin-general-* \
+ xmms-plugin-input-* xmms-plugin-output-* \
+ xmms-plugin-visualisation-*"
+
+python populate_packages_prepend () {
+ import os.path
+
+ xmms_libdir = bb.data.expand('${libdir}/xmms', d)
+ effects_root = os.path.join(xmms_libdir, 'Effect')
+ general_root = os.path.join(xmms_libdir, 'General')
+ input_root = os.path.join(xmms_libdir, 'Input')
+ output_root = os.path.join(xmms_libdir, 'Output')
+ visualisation_root = os.path.join(xmms_libdir, 'Visualization')
+
+ do_split_packages(d, effects_root, '^lib(.*)\.so$', 'xmms-plugin-effect-%s', 'XMMS Effect plugin for %s')
+ do_split_packages(d, general_root, '^lib(.*)\.so$', 'xmms-plugin-general-%s', 'XMMS General plugin for %s')
+ do_split_packages(d, input_root, '^lib(.*)\.so$', 'xmms-plugin-input-%s', 'XMMS Input plugin for %s')
+ do_split_packages(d, output_root, '^lib(.*)\.so$', 'xmms-plugin-output-%s', 'XMMS Output plugin for %s')
+ do_split_packages(d, visualisation_root, '^lib(.*)\.so$', 'xmms-plugin-visualization-%s', 'XMMS Visualization plugin for %s')
+}
+
do_stage() {
autotools_stage_all
}
+
+FILES_${PN} = "${bindir}/xmms ${bindir}/xmms.sh ${libdir}/libxmms*.so.* \
+ ${datadir}/applications/xmms.desktop \
+ ${datadir}/pixmaps/xmms_mini.xpm"