HomeCategoriesChoose a templateRecent EntriesEmdebian Grip updated
Monday, September 6 2010 screen, irssi and page control Sunday, September 5 2010 FreedomBox Wednesday, August 4 2010 check-deps.sh and xapt Thursday, July 8 2010 Switching from iceweasel to chromium Sunday, June 27 2010 World Cup QA Sunday, June 20 2010 multistrap 2.1.5 Monday, May 31 2010 HP laptop battery recall Monday, May 24 2010 DebConf10 Monday, April 26 2010 pdebuild-cross Saturday, April 24 2010 |
Sunday, March 30. 2008Comment (1) Defined tags for this entry: Debian
deb-gview, dpkg and emdebian-tools
OK, been quiet for a few days, at least on the blog, but in accordance with typical behaviour (for me at least) a quiet blog means a lot of things going on elsewhere. The smallest was a fix for deb-gview - combining a fix for opening files in the current working directory with a fix for the imminent dpkg 1.14.17 which modified the .changes file format a bit. That was relatively easy and I've uploaded 0.2.1 to unstable. gvfs hasn't made testing yet so there's no point in waiting for deb-gview to migrate before 0.2.1.
The largest change? Depends how you define large:
dpkgdpkg bugs closed - emdebian-tools 1.0.0 pending - dpkg-shlibdeps is now able to look into directories containing libraries used by cross-built binaries provided that the right environment variable are set. Closes: #453267. dpkg-buildpackage will set PKG_CONFIG_LIBDIR (but not override an existing value) in case of cross-compilation so that pkgconfig finds .pc files in the directory specific to the target architecture. Closes: #439979. These two changes will have a major effect on the overall workload required within Emdebian and give us a sane cross-building environment in Lenny which is ABSOLUTELY £$^£@&*! FANTASTIC. emdebian-tools 1.0.0Now here, I'm making some progress. A bug has been bothering me for some time with how emdebian-tools needs a Debian primary mirror to calculate various dependency information and other apt cache stuff whilst taking into account the host architecture. Simon and I now think that we can do the dependency stuff with a continually updated dpkg-cross repository and I can use libcache-apt-perl for the rest. So whereas dpkg-cross might still exist into Lenny, it is looking like apt-cross might not - at least not as an application. However, I'm not taking that step with emdebian-tools just yet. In the meantime, I'm simply using debconf to replace the automated selection of a Debian Primary Mirror and passing that mirror to apt-cross - something I should probably have setup a while ago. As well as that bug fix, I've added a check to emchain so that users are warned if they don't actually need to run it, added the mirror support to the various scripts and removed the workarounds now fixed by dpkg. ' dpkg-buildpackage -a' is usable for nearly all packages once you have dpkg-dev >= 1.14.7. emdebuild >= 1.0.0 is only necessary IF:
Also, there should now be no need for any wrapper scripts that anyone may have devised to mangle LD_LIBRARY_PATH or PKG_CONFIG_LIBDIR - indeed, explicit support for these within dpkg means that it is to be considered harmful from now on to touch these variables, except possibly in some specific corner cases. Sunday, March 23. 2008Comments (2) Defined tags for this entry: Debian
Porting a C package from libgnomevfs to GIO and GVfs.
(Note: this is a long post)
Package: deb-gview Use of GnomeVFS: "Individual package files or packages referenced in a changes file can be viewed from local or remote filesystems using GNOME VFS." Main changes: src/dvarchive.c but also src/main.c. Port Status: Complete and tested. PrerequisitesDo not run any code before completing this stepYou must ensure that gvfs, gvfs-bin and gvfs-backends are all installed and operational before running any of your modified code. Thereby hangs another tale. The application itself probably needs to depend on both gvfs and gvfs-backends. gvfs-bin provides test binaries like gvfs-info. You need to ensure that the following command operates correctly: $ gvfs-info http://www.google.com Note that this is run as the normal user, not under sudo and not as root. - that just complicates things. If you find that this works with sudo but not without, read the bug report against gvfsd. If you get this output: $ gvfs-info http://www.google.com read the bug report, find and kill the borked Starting
SummaryThis took me quite a bit of time and the bug in gvfsd was a significant hindrance so ensure that you test with gvfs-info before thinking there is a bug in your code. (Also remember that if you are reading files from http://incoming.debian.org/ then those files will disappear once each day when the cron job moves them into the pool. The GIO docs are relatively thin (especially for GVfs) and that is not just because GIO is still new. Starting a new application using GIO and having a working GIO/GVfs setup in place already would be much easier so new applications will work. As ever, the problems really show up when trying to port an application that has already worked around the various GnomeVFS bugs and now has to both remove those workarounds and implement one or two other changes for GIO. Ensure your application has Subjectively, GIO does appear smoother than GnomeVFS and maybe faster. Now I need to get on and try to port other applications to GIO..... Saturday, March 22. 2008GVfs and http://UpdateAfter contacting Sebastian Dröge, I've found that the problem with GVfs isn't in the deb-gview code, it is a permission problem within GVfs - the current deb-gview CVS code works with remote URIs when run under sudo which isn't ideal but at least indicates the nature of the problem. Once I have confirmation and/or gvfs is fixed, I'll skip deb-gview 0.1.6 and upload 0.2.0. ** (deb-gview:31002): WARNING **: file-read:http://ftp.debian.org/debian/pool/main/g/gpe-tetris/gpe-tetris_0.6.4-1_i386.deb:The specified location is not supported Hmm. This is with current CVS of deb-gview, already substantially modified to work with GIO and GVfs as libgnomevfs is deprecated. I wanted to look at the port because quicklist and gpe-filemanager will need similar ports. $ dpkg -l 'gvfs*' ii gvfs 0.2.1-1 userspace virtual filesystem - server ii gvfs-backends 0.2.1-1 userspace virtual filesystem - backends I have an RC bug in deb-gview that I need to fix and I wanted to do the two jobs in one but it's looking now as if I'll need two uploads, 0.1.6 with a trivial fix to unstable just to fix the existing bug and 0.2.0 to experimental with a lot more changes but partially broken functionality. It's a shame because I've got everything else working using GIO - it is only the GVfs part that is giving errors. Anyone else using GIO and GVfs with http:// in Sid? Thursday, March 20. 2008Comment (1) Defined tags for this entry: Debian
Death of the HP laptop
OK, the misery of the HP laptop continues.
In hibernated mode, picked up the laptop, open the lid, tap the power button and the lights come on then the lights go off. Followed by the fan and the screen. Try the power button again - nothing. Power is still getting into the machine - the power indicator works. Power does not appear to be getting any further. Bugger. (That's a nice present on my birthday isn't it!) Only option now is to remove the hard drive and take the disasterous road labelled "Customer Service" as it's under warranty. (That way I can avoid having to revoke my laptop key - it's not my main key but it's got a lot of signatures that I'd rather not loose.) Damn and double damn. Waste of money, feeling miserable and $%^@& annoyed. I'm almost tempted not to bother getting the useless thing repaired. So, I'm back on my iBook laptop which will probably now have to go back to running unstable. Wednesday, March 19. 2008Comment (1) Defined tags for this entry: Debian
GNOME 2.22 and GPE (gpe-filemanager to be exact)
This could be fun - gpe-filemanager is not currently available for Emdebian because it depends on libgnomevfs which in turn brings in a variety of other dependencies ending up with liborbit2 which simply does not (and appears cannot) cross build.
Thankfully, GNOME 2.22 deprecates libgnomevfs in favour of GIO which is already part of libglib2.0-0 and only needs other stuff via plugins. I need now to port deb-gview to GIO and, in the process, probably see if gpe-filemanager can also be ported to GIO. After all, a GUI without a file manager is going to look a little odd. I'm still working on libqof2 upstream too so it looks like I won't be doing much on Lenny for a while - not directly at least. I expect to have deb-gview 2.0.0 depending on GIO and in Lenny and maybe quicklist too. (Typical, no sooner does quicklist migrate from Gtk1 than it also needs to migrate from libgnomevfs.) Then there's all my usual Debian and Emdebian stuff. Monday, March 17. 2008Defined tags for this entry: Debian
Redesigning the SQL integration for libqof2
Unsurprisingly, there is a deal of common ground between a SQLite backend and a GDA backend. Both need simple routines that convert library data into SQL statements but each has very different ways of reading that data back from storage.
I've spent today doing upstream work (whilst also getting my central heating system replaced). Gutted the house, gutted the library - what's wrong with that? However, I've decided to make these new functions private to the library rather than exporting them. Simple reason really - they are one-way routines. One day, QOF will support UPDATE statements and one day a bit later it will also support DELETE and even DROP but those require changes within the library like "unregistering" objects that the current code simply doesn't expect. Eventually, this kind of SQL support can make a usable query interface for quicklist and a few other stalled projects (like DWI). The principle gain is to allow QOF objects to evolve and adapt but retaining compatibility will be a challenge. (QuickList is likely to only support a read-only mode for some objects and require that others are renamed before being amended.) The other advantage of this refactoring is that the SQLite backend in libqof2 will be a lot smaller than before. Migrating the code hasn't increased the size of libqof2 either because so much deprecated code has been removed when bumping the SONAME. I'm sticking with the roadmap of not looking to release libqof2 until after Lenny but that gives me plenty of time for internal reworking to get the GDA backend functional. So far, I have been able to create a test GDA data source, add a table and data, delete the data and drop the data source. Not bad! (I test with SQLite but XML, MySQL, PostgreSQL and other ODBC connections are supported by GDA without changes to the QOF code.) As ever, implementing new functionality needs a new test case so that has also been started - only 20 tests so far but worth doing. Other changes before libqof2 - at the request of the original developer - will include updating QOF-Generator to work with libqof2, updating the old HTML example pages to provide a "QuickStart Guide" and other introductory documentation. Whilst I'm doing that, I'll probably also work on the Emdebian website documentation that also needs improved coordination. Also note that pilot-qof and gpe-expenses are already libqof2 compatible. All that will be needed is some way for those to provide the username and password variables that some GDA connections would need. (The QOF GDA code already has support for such settings, it just needs to be implemented in the respective frontends.) First set of changes are now in QOF CVS. (Yes, CVS - I just don't see the appeal of all those new-fangled RCS versions - subversion is about as "modern" as I need. I just don't need the hassle that comes from git fanboys (or any of the other RCS versions) - nor do I need the hassle of migrating CVS to SVN.) What I would say is that of the various SVN WWW interfaces, websvn stinks, view svn is a bit better but the only one I really like is Trac. For a single large project, Trac is much more friendly IMHO. Wednesday, March 12. 2008Defined tags for this entry: Debian
Open vs archived bugs in Debian
Bubulle asked about whether anyone has computed the number of bugs open (and by inference close) and I've just found a link from the DD statistics pages:
Debian Bug Tracking System News - These are the bugs touched during the last four hours. The data will be updated in 40 minutes. Active Bugs 110443 (+9) 9230042 kb Archived Bugs 366389 (+0) 24156850 kb Debian NEW closable bugs 41 Source packages in incoming.debian.org 19 Package movement for testing +17 -2 Orphaned packages 360 Popularity contest Debian 76404 (+0) Ubuntu 448702 (+0) Total registered dpkg/apt Users 525106 There's an RSS feed too. Wednesday, March 12. 2008Comment (1) Defined tags for this entry: Debian
Serial over USB, broken laptops and screen
Well, after many failed attempts, here I am on my problematic HP laptop with a USB key mounted, a balloon3 board booted under an Emdebian root filesystem and visible over USB-to-serial using /dev/ttyUSB0 via screen.
Thanks to Daniel's tip about screen /dev/ttyUSB0 115200, my USB to Serial converter (Maplins with a Prolific PL2303 chipset) is working on my problematic HP laptop. The proviso is that I have to reboot to enable all this stuff - allow the laptop to hibernate and all this USB stuff just disappears. The only remaining problem is the wireless - I haven't decided yet whether to patch the current stock Debian kernel (I've had enough problems without getting into more kernel issues) - I may simply buy a replacement external wireless unit or just not use wireless until the b43 driver is capable of working with the Broadcom Corporation BCM94311MCG wlan mini-PCI (rev 02). The magic runes for enabling USB are to add some more options to the grub boot list (on the 'kernel' line):
minicom still doesn't like serial over USB (on this laptop, it adds an extra line feed and then refuses to pass on any keyboard entry to the device in a similar manner to the powerpc laptop) but screen works nicely. Thanks Daniel. With noirqfixup added, I can also plug in other USB things like a USB mouse and actually see them work. This is all good news because apart from adding these mysterious runes to Grub, this is a completely standard Debian box running Sid and with no particular configuration changes or tweaks in the system setup. This means that I can now get on with uploading the emdebian-tools package split to Debian unstable, adapting the Emdebian root filesystem for balloon3 to support USB networking by default and suggesting screen as an alternative to minicom in the control information for the new emdebian-rootfs package. (The package split is now in Emdebian SVN - main trunk - if you are interested.) I'm also downgrading my old G4 iBook to running Lenny instead of sid and it will now stay running Lenny as Debian stable when Lenny is released. It just makes it easier to not have to keep downloading massive updates on the brief occasions that I now use the iBook. Now if I can just work out why hibernation forgets 'noirqfixup', I'll have a usable HP laptop.... Not bad for a machine that I once considered as a complete non-starter. |
ArchivesSyndicate This BlogQuicksearch |
