diff options
34 files changed, 1022 insertions, 20 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&g=%s' title='packages which names begins with \"%s\"'>%s</a> |", $letter, $letter, $letter ); + } + } + + $ipkgoutput .= " <a href='?action=letter&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&pnm=%s'>%s</a></td><td><a href=\"?action=section&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&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&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&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/dhcdbd/.mtn2git_empty b/packages/dhcdbd/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/dhcdbd/.mtn2git_empty diff --git a/packages/dhcdbd/dhcdbd_1.14.bb b/packages/dhcdbd/dhcdbd_1.14.bb new file mode 100644 index 0000000000..f46543d2d4 --- /dev/null +++ b/packages/dhcdbd/dhcdbd_1.14.bb @@ -0,0 +1,26 @@ +DESCRIPTION="DBus-enabled dhcp client" +SECTION="net" +LICENSE="GPL" +HOMEPAGE="http://people.redhat.com/jvdias/dhcdbd/" +MAINTAINER="Milan Plzik <mmp@handhelds.org>" + +DEPENDS = "dbus" + +SRC_URI="http://people.redhat.com/jvdias/dhcdbd/dhcdbd-${PV}.tar.gz \ + file://dhcdbd-1.14-pkgconfig_dbus.patch;patch=1\ + file://dhcdbd" + +do_configure() { +} + +do_compile() { + CC=${TARGET_SYS}-gcc DESTDIR=${prefix} make +} + +do_install() { + DESTDIR=${D} make install + install -d ${D}/etc/init.d + install -m 0755 ${WORKDIR}/dhcdbd ${D}/etc/init.d/ +} + +FILES_${PN}="${sysconfdir} ${datadir}/dbus-1 ${base_sbindir}" diff --git a/packages/dhcdbd/files/.mtn2git_empty b/packages/dhcdbd/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/dhcdbd/files/.mtn2git_empty diff --git a/packages/dhcdbd/files/dhcdbd b/packages/dhcdbd/files/dhcdbd new file mode 100755 index 0000000000..568753c28c --- /dev/null +++ b/packages/dhcdbd/files/dhcdbd @@ -0,0 +1,28 @@ +#!/bin/sh +# +# DHCDBD startup script + +. /etc/profile + +case $1 in + 'start') + echo -n "Starting dhcdbd daemon: dhcdbd" + /sbin/dhcdbd --system + echo "." + ;; + + 'stop') + echo -n "Stopping dhcdbd: dhcdbd" + killall `ps |grep /sbin/dhcdbd | grep -v grep | cut "-d " -f2` + echo "." + ;; + + 'restart') + $0 stop + $0 start + ;; + + *) + echo "Usage: $0 { start | stop | restart }" + ;; +esac diff --git a/packages/dhcdbd/files/dhcdbd-1.14-pkgconfig_dbus.patch b/packages/dhcdbd/files/dhcdbd-1.14-pkgconfig_dbus.patch new file mode 100644 index 0000000000..c2e2151d17 --- /dev/null +++ b/packages/dhcdbd/files/dhcdbd-1.14-pkgconfig_dbus.patch @@ -0,0 +1,26 @@ +diff -Naur dhcdbd-1.14/Makefile dhcdbd-1.14-mod/Makefile +--- dhcdbd-1.14/Makefile 2006-01-17 22:23:51.000000000 +0100 ++++ dhcdbd-1.14-mod/Makefile 2006-08-02 18:02:42.000000000 +0200 +@@ -7,8 +7,8 @@ + LDFLAGS ?= -g + DESTDIR ?= / + LIBDIR ?= lib +-DBUS_INCLUDES ?= -I/usr/$(LIBDIR)/dbus-1.0/include -I/usr/include/dbus-1.0 +-DBUS_LIBS ?= -ldbus-1 ++DBUS_INCLUDES ?= `pkg-config dbus-1 --cflags` ++DBUS_LIBS ?= `pkg-config dbus-1 --libs` + OBJS = dbus_service.o dhcdbd.o dhcp_options.o main.o + SRCS = dbus_service.c dhcdbd.c dhcp_options.c main.c + INCS = dbus_service.h dhcdbd.h dhcp_options.h includes.h +diff -Naur dhcdbd-1.14/tests/Makefile dhcdbd-1.14-mod/tests/Makefile +--- dhcdbd-1.14/tests/Makefile 2006-01-17 22:23:51.000000000 +0100 ++++ dhcdbd-1.14-mod/tests/Makefile 2006-08-02 18:11:43.000000000 +0200 +@@ -2,7 +2,7 @@ + LD = ${CC} + CFLAGS ?= -g -Wall + LDFLAGS ?= -g +-DBUS_LIBS ?= -ldbus-1 ++DBUS_LIBS ?= `pkg-config dbus-1 --libs` + + all: test_dhcp_options test_dhcdbd_state test_subscriber test_subscriber_dbus test_prospective_subscriber + diff --git a/packages/gpe-autostarter/gpe-autostarter_0.11.bb b/packages/gpe-autostarter/gpe-autostarter_0.11.bb index 5f2ee4f122..326fae9257 100644 --- a/packages/gpe-autostarter/gpe-autostarter_0.11.bb +++ b/packages/gpe-autostarter/gpe-autostarter_0.11.bb @@ -1,5 +1,5 @@ SECTION = "gpe" -DEPENDS = "glib-2.0 dbus hotplug-dbus virtual/libx11" +DEPENDS = "glib-2.0 dbus-glib hotplug-dbus virtual/libx11" RDEPENDS = "hotplug-dbus" LICENSE = "GPL" diff --git a/packages/gpe-autostarter/gpe-autostarter_0.12.bb b/packages/gpe-autostarter/gpe-autostarter_0.12.bb index 5e6fe34c10..f92b5df16b 100644 --- a/packages/gpe-autostarter/gpe-autostarter_0.12.bb +++ b/packages/gpe-autostarter/gpe-autostarter_0.12.bb @@ -1,6 +1,6 @@ LICENSE = "GPL" SECTION = "gpe" -DEPENDS = "glib-2.0 dbus hotplug-dbus virtual/libx11" +DEPENDS = "glib-2.0 dbus-glib hotplug-dbus virtual/libx11" RDEPENDS = "hotplug-dbus" inherit gpe diff --git a/packages/gpe-autostarter/gpe-autostarter_0.6.bb b/packages/gpe-autostarter/gpe-autostarter_0.6.bb index 0b3edf936f..ef7f255db6 100644 --- a/packages/gpe-autostarter/gpe-autostarter_0.6.bb +++ b/packages/gpe-autostarter/gpe-autostarter_0.6.bb @@ -1,6 +1,6 @@ LICENSE = "GPL" SECTION = "gpe" -DEPENDS = "glib-2.0 dbus hotplug-dbus" +DEPENDS = "glib-2.0 dbus-glib hotplug-dbus" RDEPENDS = "hotplug-dbus" inherit gpe diff --git a/packages/gpe-autostarter/gpe-autostarter_0.7.bb b/packages/gpe-autostarter/gpe-autostarter_0.7.bb index 5e6fe34c10..f92b5df16b 100644 --- a/packages/gpe-autostarter/gpe-autostarter_0.7.bb +++ b/packages/gpe-autostarter/gpe-autostarter_0.7.bb @@ -1,6 +1,6 @@ LICENSE = "GPL" SECTION = "gpe" -DEPENDS = "glib-2.0 dbus hotplug-dbus virtual/libx11" +DEPENDS = "glib-2.0 dbus-glib hotplug-dbus virtual/libx11" RDEPENDS = "hotplug-dbus" inherit gpe diff --git a/packages/gpe-beam/gpe-beam_0.2.6.bb b/packages/gpe-beam/gpe-beam_0.2.6.bb index 232234a77f..d57cb53b83 100644 --- a/packages/gpe-beam/gpe-beam_0.2.6.bb +++ b/packages/gpe-beam/gpe-beam_0.2.6.bb @@ -3,7 +3,7 @@ PR = "r1" inherit gpe DESCRIPTION = "GPE infrared communication applet" -DEPENDS = "gtk+ libgpewidget libmimedir libgpevtype openobex irda-utils dbus" +DEPENDS = "gtk+ libgpewidget libmimedir libgpevtype openobex irda-utils dbus-glib" RDEPENDS = "libopenobex-1.0-1 irda-utils" SECTION = "gpe" PRIORITY = "optional" diff --git a/packages/gpe-beam/gpe-beam_0.2.7.bb b/packages/gpe-beam/gpe-beam_0.2.7.bb index 48fdf116f1..4b54bef82d 100644 --- a/packages/gpe-beam/gpe-beam_0.2.7.bb +++ b/packages/gpe-beam/gpe-beam_0.2.7.bb @@ -3,11 +3,11 @@ PR = "r1" inherit gpe DESCRIPTION = "GPE infrared communication applet" -DEPENDS = "gtk+ libgpewidget libmimedir libgpevtype openobex irda-utils dbus" +DEPENDS = "gtk+ libgpewidget libmimedir libgpevtype openobex irda-utils dbus-glib" RDEPENDS = "libopenobex-1.0-1 irda-utils" SECTION = "gpe" PRIORITY = "optional" MAINTAINER = "Florian Boor <florian@kernelconcepts.de>" LICENSE = "GPL" -SRC_URI += "file://decl.patch;patch=1;pnum=0"
\ No newline at end of file +SRC_URI += "file://decl.patch;patch=1;pnum=0" diff --git a/packages/gpe-beam/gpe-beam_0.2.8.bb b/packages/gpe-beam/gpe-beam_0.2.8.bb index 4047f6e7a9..b1a8f4f780 100644 --- a/packages/gpe-beam/gpe-beam_0.2.8.bb +++ b/packages/gpe-beam/gpe-beam_0.2.8.bb @@ -3,7 +3,7 @@ PR = "r0" inherit gpe DESCRIPTION = "GPE infrared communication applet" -DEPENDS = "gtk+ libgpewidget libmimedir libgpevtype openobex irda-utils dbus" +DEPENDS = "gtk+ libgpewidget libmimedir libgpevtype openobex irda-utils dbus-glib" RDEPENDS = "irda-utils" SECTION = "gpe" PRIORITY = "optional" diff --git a/packages/gpe-beam/gpe-beam_0.2.9.bb b/packages/gpe-beam/gpe-beam_0.2.9.bb index d21b18d84a..6b8c4b9f55 100644 --- a/packages/gpe-beam/gpe-beam_0.2.9.bb +++ b/packages/gpe-beam/gpe-beam_0.2.9.bb @@ -1,5 +1,5 @@ DESCRIPTION = "GPE infrared communication applet" -DEPENDS = "gtk+ libgpewidget libmimedir libgpevtype openobex irda-utils dbus" +DEPENDS = "gtk+ libgpewidget libmimedir libgpevtype openobex irda-utils dbus-glib" RDEPENDS = "irda-utils" SECTION = "gpe" PRIORITY = "optional" diff --git a/packages/gpe-calendar/gpe-calendar_0.70.bb b/packages/gpe-calendar/gpe-calendar_0.70.bb index eeab0a366c..d88c8c3930 100644 --- a/packages/gpe-calendar/gpe-calendar_0.70.bb +++ b/packages/gpe-calendar/gpe-calendar_0.70.bb @@ -5,11 +5,11 @@ MAINTAINER = "Florian Boor <florian.boor@kernelconcepts.de>" inherit autotools gpe -DEPENDS = "dbus libeventdb libschedule libxsettings-client libgpepimc libgpevtype" +DEPENDS = "dbus-glib libeventdb libschedule libxsettings-client libgpepimc libgpevtype" SECTION = "gpe" RDEPENDS = "gpe-icons" DESCRIPTION = "GPE calendar is the calendar application of the GPE PIM suite." do_configure () { autotools_do_configure -}
\ No newline at end of file +} diff --git a/packages/gpe-calendar/gpe-calendar_0.71.bb b/packages/gpe-calendar/gpe-calendar_0.71.bb index eeab0a366c..d88c8c3930 100644 --- a/packages/gpe-calendar/gpe-calendar_0.71.bb +++ b/packages/gpe-calendar/gpe-calendar_0.71.bb @@ -5,11 +5,11 @@ MAINTAINER = "Florian Boor <florian.boor@kernelconcepts.de>" inherit autotools gpe -DEPENDS = "dbus libeventdb libschedule libxsettings-client libgpepimc libgpevtype" +DEPENDS = "dbus-glib libeventdb libschedule libxsettings-client libgpepimc libgpevtype" SECTION = "gpe" RDEPENDS = "gpe-icons" DESCRIPTION = "GPE calendar is the calendar application of the GPE PIM suite." do_configure () { autotools_do_configure -}
\ No newline at end of file +} diff --git a/packages/gpe-calendar/gpe-calendar_0.72.bb b/packages/gpe-calendar/gpe-calendar_0.72.bb index c5d1435d8d..d88c8c3930 100644 --- a/packages/gpe-calendar/gpe-calendar_0.72.bb +++ b/packages/gpe-calendar/gpe-calendar_0.72.bb @@ -5,7 +5,7 @@ MAINTAINER = "Florian Boor <florian.boor@kernelconcepts.de>" inherit autotools gpe -DEPENDS = "dbus libeventdb libschedule libxsettings-client libgpepimc libgpevtype" +DEPENDS = "dbus-glib libeventdb libschedule libxsettings-client libgpepimc libgpevtype" SECTION = "gpe" RDEPENDS = "gpe-icons" DESCRIPTION = "GPE calendar is the calendar application of the GPE PIM suite." diff --git a/packages/gpe-contacts/gpe-contacts_0.45.bb b/packages/gpe-contacts/gpe-contacts_0.45.bb index b5afbb3a3c..56c3af8eb2 100644 --- a/packages/gpe-contacts/gpe-contacts_0.45.bb +++ b/packages/gpe-contacts/gpe-contacts_0.45.bb @@ -3,7 +3,7 @@ inherit gpe autotools PR = "r0" -DEPENDS = "libcontactsdb libgpewidget libgpepimc libdisplaymigration libgpevtype dbus" +DEPENDS = "libcontactsdb libgpewidget libgpepimc libdisplaymigration libgpevtype dbus-glib" SECTION = "gpe" RDEPENDS = "gpe-icons" DESCRIPTION = "GPE contacts manager" diff --git a/packages/gpe-filemanager/gpe-filemanager_0.23.bb b/packages/gpe-filemanager/gpe-filemanager_0.23.bb index 2beee83596..5d0fe7a1b0 100644 --- a/packages/gpe-filemanager/gpe-filemanager_0.23.bb +++ b/packages/gpe-filemanager/gpe-filemanager_0.23.bb @@ -4,7 +4,7 @@ inherit gpe PR = "r0" LICENSE = "GPL" DESCRIPTION = "GPE file manager" -DEPENDS = "libgpewidget gnome-vfs dbus" +DEPENDS = "libgpewidget gnome-vfs dbus-glib" SECTION = "gpe" RDEPENDS = "gpe-icons" RRECOMMENDS = "gnome-vfs-plugin-file" diff --git a/packages/gpe-filemanager/gpe-filemanager_0.24.bb b/packages/gpe-filemanager/gpe-filemanager_0.24.bb index 2beee83596..5d0fe7a1b0 100644 --- a/packages/gpe-filemanager/gpe-filemanager_0.24.bb +++ b/packages/gpe-filemanager/gpe-filemanager_0.24.bb @@ -4,7 +4,7 @@ inherit gpe PR = "r0" LICENSE = "GPL" DESCRIPTION = "GPE file manager" -DEPENDS = "libgpewidget gnome-vfs dbus" +DEPENDS = "libgpewidget gnome-vfs dbus-glib" SECTION = "gpe" RDEPENDS = "gpe-icons" RRECOMMENDS = "gnome-vfs-plugin-file" diff --git a/packages/gpe-filemanager/gpe-filemanager_0.25.bb b/packages/gpe-filemanager/gpe-filemanager_0.25.bb index 898ff6002b..1ccb811490 100644 --- a/packages/gpe-filemanager/gpe-filemanager_0.25.bb +++ b/packages/gpe-filemanager/gpe-filemanager_0.25.bb @@ -4,7 +4,7 @@ inherit gpe PR = "r1" LICENSE = "GPL" DESCRIPTION = "GPE file manager" -DEPENDS = "libgpewidget gnome-vfs dbus" +DEPENDS = "libgpewidget gnome-vfs dbus-glib" SECTION = "gpe" RDEPENDS = "gpe-icons" RRECOMMENDS = "gnome-vfs-plugin-file gnome-vfs-plugin-smb gnome-vfs-plugin-ftp gnome-vfs-plugin-computer gnome-vfs-plugin-network gnome-vfs-plugin-sftp gnome-vfs-plugin-http" diff --git a/packages/hicolor-icon-theme/hicolor-icon-theme_0.9.bb b/packages/hicolor-icon-theme/hicolor-icon-theme_0.9.bb new file mode 100644 index 0000000000..2f7e21892a --- /dev/null +++ b/packages/hicolor-icon-theme/hicolor-icon-theme_0.9.bb @@ -0,0 +1,7 @@ +SECTION = "unknown" +LICENSE = "GPL" +inherit gnome + +SRC_URI = "http://icon-theme.freedesktop.org/releases/${P}.tar.gz" + +FILES_${PN} += "${datadir}/icons" diff --git a/packages/libhal-nm/.mtn2git_empty b/packages/libhal-nm/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/libhal-nm/.mtn2git_empty diff --git a/packages/libhal-nm/libhal-nm_0.0.2.bb b/packages/libhal-nm/libhal-nm_0.0.2.bb new file mode 100644 index 0000000000..661df4c23b --- /dev/null +++ b/packages/libhal-nm/libhal-nm_0.0.2.bb @@ -0,0 +1,24 @@ +DESCRIPTION="A library emulating libhal on systems where HAL cannot run" +SECTION="libs" +LICENSE="LGPL" +HOMEPAGE="http://www.handhelds.org/~mmp" +MAINTAINER = "Milan Plzik <mmp@handhelds.org>" +PRIORITY="optional" +DEPENDS="glib-2.0" +SRC_URI="http://www.handhelds.org/~mmp/files/libhal-nm-${PV}.tar.gz" + +inherit autotools + +do_stage () { + autotools_stage_all +} + +do_install () { + oe_runmake DESTDIR=${D} install +} + +PACKAGES="${PN} ${PN}-dev" + +FILES_${PN}="${libdir}" +FILES_${PN}-dev="/usr/include" + diff --git a/packages/libnl/.mtn2git_empty b/packages/libnl/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/libnl/.mtn2git_empty diff --git a/packages/libnl/files/.mtn2git_empty b/packages/libnl/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/libnl/files/.mtn2git_empty diff --git a/packages/libnl/files/local-includes.patch b/packages/libnl/files/local-includes.patch new file mode 100644 index 0000000000..5af463004b --- /dev/null +++ b/packages/libnl/files/local-includes.patch @@ -0,0 +1,11 @@ +--- libnl-1.0-pre6/Makefile.opts.in.orig 2006-08-24 14:57:42.000000000 +0200 ++++ libnl-1.0-pre6/Makefile.opts.in 2006-08-24 14:58:20.000000000 +0200 +@@ -10,7 +10,7 @@ + # + + CC := @CC@ +-CFLAGS := @CFLAGS@ ++CFLAGS := -I./include -I. -I../include @CFLAGS@ + LDFLAGS := @LDFLAGS@ + CPPFLAGS := @CPPFLAGS@ + PACKAGE_NAME := @PACKAGE_NAME@ diff --git a/packages/libnl/libnl_1.0-pre6.bb b/packages/libnl/libnl_1.0-pre6.bb new file mode 100644 index 0000000000..3851c5687d --- /dev/null +++ b/packages/libnl/libnl_1.0-pre6.bb @@ -0,0 +1,25 @@ +DESCRIPTION = "libnl is a library for applications dealing with netlink sockets" +SECTION = "libs/network" +LICENSE = "LGPL" +HOMEPAGE = "http://people.suug.ch/~tgr/libnl/" +MAINTAINER = "Milan Plzik <mmp@handhelds.org>" +PRIORITY = "optional" +DEPENDS = "glibc" + +inherit autotools pkgconfig gpe + +SRC_URI= "http://people.suug.ch/~tgr/libnl/files/${P}.tar.gz \ + file://local-includes.patch;patch=1" + +do_install() { + oe_runmake prefix=${prefix} DESTDIR=${D} install +} + +do_stage () { + autotools_stage_all prefix=${prefix} +} + +do_install () { + oe_runmake prefix=${prefix} DESTDIR=${D} install +} + 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" |