LWN.net Logo

LWN.net Weekly Edition for January 28, 2010

An LCA 2010 overview

By Jonathan Corbet
January 26, 2010
The 2010 edition of linux.conf.au was held on January 18 to 22 in Wellington, New Zealand. A number of the talks from this event have been covered elsewhere on LWN, with more to come; this article will talk about several other sessions and your editor's impressions of the conference as a whole. In brief: it was a highly successful event which easily lived up to the high standards set by LCA.

[Haka] One often goes to conferences to see the speakers perform. It's a rare event, however, which gets them up on stage together to do a Maori war dance. The speakers' dinner on Tuesday night featured plenty of good food, "Fiasco" wine, and a group which gave lessons on how to do the Haka (which only coincidentally sounds a lot like "hacker"). Much noise was made, much fun was had, and, much to the participants' chagrin, videos were made.

Benjamin Mako Hill presented the Wednesday morning keynote. He started off with a discussion of the open source/free software divide, noting that he is very much in the free software camp. The open source side, he said, emphasizes practical benefits, whereas freedom has inherent benefits. The rest of his talk was dedicated to one specific benefit (a rather practical one, in your editor's opinion) that comes with free software: freedom from antifeatures.

Antifeatures are behaviors added to proprietary software as a way of exerting some sort of control over users. It can be a simple matter of extracting money from users - requiring them to pay more to have advertising or spyware features removed, for example. It can be a matter [Benjamin Mako Hill] of market segmentation; see, for example, the several versions of Windows Vista offered by Microsoft or the removal of raw image support from some Canon cameras. Vendors may be trying to secure monopolies; software which detects third-party batteries in devices and disables the power-saving features is an example. "Protecting copyrights" is another; there are, he says, no Facebook fan clubs for dongles or the unskippable tracks at the beginning of DVDs.

In all of these cases, the cited behavior works against the interests of the people actually using that software; these features are not something that users have requested. They are all also features which are entirely unsustainable in the free software world. Even if a free software project were to implement this sort of antifeature - something which happens rarely - others will quickly disable it; see the Okular cut-and-paste story for an example. Software freedom means the freedom to remove functionality we don't want.

Mako has set up a wiki site where he is collecting interesting examples of software antifeatures.

How can we make a community which is more welcoming? Matthew Garrett addressed this question from a number of viewpoints, without necessarily coming to a lot of conclusions. The problem, he says, is that, as a community, we tend to be hostile - even if truly unprovoked aggressive behavior [Matthew Garrett] is relatively rare. We tend to value code over everything else, and we value technical excellence above behavioral excellence. The result is that the community is not terribly functional as a whole; it has not gained the behavioral standards that one would normally associate with a community, and we're getting big enough that we really need to do something about it.

In general, we don't hate each other; we can get together at conferences and not punch each other in the face. It has only happened to him once at LCA, Matthew says, and he deserved it.

So what do we do? Codes of conduct can help, but only if we are willing to enforce them. We need to decide whether we are willing to tolerate poisonous people if they are technically strong enough. There should be a greater willingness to point out unacceptable behavior; Matthew would especially like to see respected community members doing more of this. What works best, though, may be the simple power of positive examples.

Glyn Moody's keynote focused on the power of sharing, and how ideas from our community have spread out and influenced the wider world. For example, consider open access to scientific results, which have been increasingly bottled up by the publishing industry. The ArXiv.org repository was announced within a week of when Linus announced his first kernel release; since then, open access has become an increasingly strong force in the scientific community.

Related to that was the race to completely sequence the human genome. A company called Celera was a late entry with a scary agenda: sequence the genome, then patent as much of it as possible. In the end, though, a lone hacker named Jim Kent was able to bash out a system which solved the problem first, using a 200-system Linux cluster. He won the race by a few days and put the results into the public domain, heading off the patent threat.

[Glyn Moody] Project Gutenberg - which predates Linux by some years - is an interesting example. Despite having significant resources, this project only had ten books online by 1991. By 1997, though, that number had expanded to 1000. The spread of the Internet clearly helped in this regard, but a wider understanding of the importance of freely-available information also helped.

Sharing is moving into a number of other realms; Glyn described sites like Facebook and Twitter as simply a means for the sharing of lives. Openness is also moving into government - to an extent. The use of a Creative Commons license for the content on the Change.gov site was a clear sign that things are changing. Still, things are not really open; it's the traditional power structure with a bit of data released - "shared source government."

The final part of the talk went rather far afield into the areas of climate change, environmental problems, and the financial crisis. In the end, Glyn said, these problems are all the result of a failure to share. Our community, he said, has shown how sharing is done, and we've exported that knowledge widely. Now we need to find a way to apply it to these larger problems. That is quite the challenge; your editor can't wait to see the patches that result.

Andrew "Tridge" Tridgell is concerned about a different threat: patent attacks on free software. These attacks, he fears, are only going to become more common; the community as a whole needs to learn how to defend itself. Patent defense, Tridge says, begins with the developers.

To that end, developers should learn how to read patents, a process which isn't obvious from the outset. Many developers have come to the conclusion that looking at patents can be dangerous - triple damages for willful infringement and all that. Tridge's point is that most free software [Andrew Tridgell] projects cannot withstand even single damages. There is no point in worrying about a triple death when a single death is enough. So, rather than walking through the minefield with a blindfold on, it's better to take the blindfold off and step around the mines.

There are three ways to defend against patent claims. Developers tend to turn to prior art, but that is a difficult and dangerous way to go; establishing prior art can be much harder than most people expect. Invalidating patents is even worse; that can almost never be done successfully. The best defense, he says, is finding ways to not infringe on the patent in the first place. The cost is low, the certainty is higher, and it can lead to a stronger defense for free software in general. Non-infringement, normally, is achieved through a combination of careful reading of the patent and the crafting of workarounds where needed.

The problem is that the GPL requires broad licensing of patents; if a patent is not licensed for all users of the code, that code cannot be distributed. There are good reasons for this requirement, but it also can make us into an attractive target: a company which wishes to settle a patent suit cannot stop with buying a license for itself; it must buy a license for the entire community. That's the sort of situation which makes patent trolls dream of dollar signs.

The situation changes, though, when we find an effective workaround for a patent. That workaround essentially invalidates the patent, eliminating the threat. When proprietary companies find workarounds, they tend to keep them to themselves; there's no point in helping their competition avoid the payment of royalties. In the free software world, though, we can distribute workarounds broadly, to the point that proprietary software companies can pick them up too. That will kill the value of the patent entirely, drying up any associated revenue stream. After a few episodes like that, the free software community will look like the "toughest, meanest kid on the block," and patent trolls will be inclined to leave us alone.

Workarounds must be done rigorously, though, with help from lawyers. That is a challenge: the legal community is not known for open sharing of information on topics like this. We need a forum where engineers and lawyers from competing companies can talk openly about patents, but such a forum does not yet exist.

Josh Berkus updated attendees on the state of PostgreSQL; it is, he says, an exciting time for the project. He started by announcing that the upcoming release will be named 9.0, not 8.5 as had been previously expected. That's because this release contains a number of features which they hadn't thought would be ready by now; these include hot standby, streaming replication, a 64-bit Windows port, the new DO() statement, and more. The dot-zero number also reflects the fact that some of these features "might not work perfectly" in this release.

The PostgreSQL development process has changed in the last couple of years in response to the difficult 8.2 cycle which dragged out for six months longer than anybody had expected. It has proved difficult to manage committer and reviewer time for PostgreSQL. The way it works now is that, every other month, the project enters a "commitfest," at which point the outstanding patch queue is emptied. Patches may be merged, rejected, or deferred, but, anyway, some sort of disposition is decided upon. This [Josh Berkus] process helps to ensure that patches move through the system, it allows contributors to see which patches are stalled and why, and it should help to train new reviewers and committers for the future.

The final commitfest for 9.0 goes through the end of January; after that the project goes into stabilization mode, with the final release expected sometime around June or July.

One widely-anticipated feature for 9.0 is hot standby. This feature works by taking the transaction logs from the primary database server and copying them to one or more standby systems. Those systems fold the logs into their copy of the database. The result is that the backup systems may be slightly behind the primary database, but they stand ready to take over at any time. While they are in standby mode, they are able to handle read-only queries, helping to distribute the load somewhat.

A related new feature is streaming replication. It aims to solve the same problem as hot standby, with some changes: streaming replication is for sites which are concerned about never losing any data, want minimal (as in a few seconds) downtime should a failover be necessary, and which are less concerned about multi-node scalability. Such sites can set up replicated servers which receive transaction log data almost immediately after each transaction completes. The replicated servers are thus very close to the state of the primary server. This feature works, though, Josh notes, the administration is a bit awkward in 9.0.

The "explain" feature has been enhanced in 9.0. In addition to the semi-human-readable version that PostgreSQL has used for some time, "explain" can now output its results in XML, JSON, or YAML format. This change is meant to make it easier for graphical frontends to interpret the output, but developers are starting to discover that some of the formats (YAML in particular) are easier to read than the classic format.

Finally, Josh talked about the project's upcoming transition to git for its source code management. They are hoping to free themselves of CVS in the next development cycle, but a couple of developers are still dragging their feet. It seems that this little problem will be overcome sooner or later. Meanwhile, the PostgreSQL project appears to be in good shape and getting better.

In conclusion: LCA 2010 was a busy and interesting event. Your editor's main grumble was that the schedule was so full of useful talks that he never got to go out and enjoy the beautiful, sunny weather which only occurred while the conference was in session. LCA retains the things that make it special: interesting talks on a wide variety of topics, a unique mix of people, lots of fun, and a generally friendly atmosphere. Also notable was the presence of more women than at any other event you editor has ever seen - and the fact that nobody even felt the need to comment on it.

[Suzanne and Andrew Ruthven] Even an article of this length - along with the other half-dozen LWN articles coming from this conference - cannot cover all of the interesting things that happened there. Also noteworthy were Selena Deckelmann's lightning talk on using free software to help overturn a rigged African election, Gabriella Coleman's keynote on free software culture, Patrick Brennan's talk on Albany Senior High School, which abruptly shifted to Linux in 2009, Joel Stanley's push for hardware designed explicitly to run free software, and, needless to say, the traditional Penguin Dinner, even if memories from that particular event tend to be a bit fuzzy.

LCA 2010 organizers Andrew and Susanne Ruthven are to be commended on their stewardship of this venerable event. LCA might not have been in Australia this year, but they managed to keep all that makes LCA worthwhile while bringing it to an interesting new venue. For added fun - since organizing a conference like LCA is evidently not enough work on its own - they also threw having a baby into the mix and still kept everything together (with a lot of help from the rest of the organizing team, needless to say). They are probably more than ready to pass the baton on to next year's organizing team, which announced that LCA 2011 will return to Brisbane, Australia, probably in early February.

Comments (16 posted)

LCA: Static analysis with GCC plugins

By Jonathan Corbet
January 22, 2010
Taras Glek works for Mozilla, but he is not a browser hacker; instead, he works on GCC and other tools aimed at making the browser development process better. It is, he says, a good job. While carrying out his duties, Taras has been able to put a new GCC feature to work in ways which may prove to be useful well beyond Mozilla.

Development tools are important; they can help us to produce software more quickly and with far fewer problems. Unfortunately, Taras says, we are stuck in the stone age of software development, using tools from the 1970's. Our code base is growing, though, to the point that developers often cannot understand the entirety of even a single application. We need [Taras Glek] some way to amplify our capabilities so that we can continue to make more powerful applications; static analysis tools can bring some of those capabilities.

Static analysis, in essence, treats the code as data which is then the subject of further analysis. It has often been seen as a backwater, an area of primarily academic interest. When static analysis tools have found their way into more common use, it has generally been in their ability to find certain classes of bugs. But there's more that can be done with these tools: finding API abuse, generating library bindings, improved code base visualization, and more. Static analysis has been put to use with Mozilla to find dead code; thousands of lines of code have been found to be completely unused, despite the fact that engineers were putting their time into maintaining it.

The Mozilla project has an especially strong need for good tools. It is a huge code base (1.7 million lines of C++ and 1 million lines of JavaScript); humans just do not scale to that amount of code. This code base is under constant optimization work, so refactorings are frequent. Without some help, keeping this code in good condition is a major challenge.

Much of Taras's work seems to be aimed at mitigating some of the pains that come with C++ development. One of those pains is that the language is just about impossible to parse; the parser must actually instantiate types before it can complete its job. So anybody who wants to analyze C++ code must first find a decent parser for it. The available options are limited. The LLVM compiler is promising, but it's going to be another year or two before it's really ready for prime time. The Elsa tool can be used, but it's essentially unmaintained and not really guaranteed to be correct.

The one other option - one which is known to have a complete C++ parser - is GCC. But the GCC code has a bit of a nasty reputation, so Taras started off using Elsa for his work. Eventually, though, he turned back to GCC for something more solid, and hasn't looked back - the hairiness of GCC has, perhaps, been exaggerated. But, more to the point, the upcoming GCC 4.5 release is, he says, "the most exciting release ever." The reason for that is the long-delayed addition of the plugin API, which became possible once the runtime library license exemption finally went into place. With this API, analysis code can easily hook into the compiler and inspect code at whatever stage of the process best suits its needs.

Beyond plugins, GCC has a few other features which make it suitable for static analysis work. The ability to attach attributes to objects in the compiled code makes it easy to pass hints through to later processing steps. The new pass manager brings a relatively modern structure to a compiler which did not originally have one. And the GIMPLE intermediate representation provides much of the rest of what's needed for code which needs to inspect other code.

There are a few interesting plugins in the works. One of them is the LLVM compiler, which can be plugged in to perform the back-end functions for GCC. Another is milepost, which uses a brute-force approach to figure out the optimal settings of the command-line flags for a specific body of code. Then, there are "the hydras," which are Taras's work. These plugins take an interesting approach, in that the actual analysis work is done in JavaScript scripts. The idea was originally seen as amusing - "wouldn't it be fun to put Spidermonkey into GCC?" - but it has actually worked out well. JavaScript is a relatively nice, concise language which makes it easy to implement the needed capabilities.

The first plugin is Dehydra, so named because the control flow graph in Mozilla somewhat resembles a Hydra monster. Dehydra produces a JSON-like representation of the objects found in a C++ program; individual JavaScript scripts can then use this representation to analyze the program. The Treehydra plugin, instead, provides a JavaScript interface to the GIMPLE representation of the program; it can be used for more traditional sorts of static analysis tasks.

One of the pains that come with large C++ programs is that simply finding code can be difficult. It's not always clear which method will be invoked in a specific situation, even in the absence of things like macro tricks. To help with this problem, Dehydra has been used as the base of a source browsing tool called DXR; it's like LXR, but with a great deal of semantic information thrown in. DXR users can find types defined by macros, look up parent class information, and so on. There's also a call graph tool which can find all the callers of a specific method; that's important in C++, where overloading can make grep thoroughly unusable for this kind of task. It is, Taras says, "Eclipse-like stuff," except that, unlike Eclipse, it scales to a Mozilla-size code base.

Various other tools have been written. The final.js script (a dozen lines of code which can be seen on this page) looks for C++ methods tagged with the "final" attribute; any attempt to override those methods will result in a compilation error. It is, in other words, a port of the Java final keyword to C++. A checker which might be interesting in other environments - including the kernel - is flow.js, which can add a constraint that all exits from a function must flow through a specific label. Consider this common kernel pattern:

    if (something wrong)
    	goto out;
    /* Do some real work */

  out:
    release_locks();
    free_memory();
    cancel_self_destruct()
    return something;

It's a common mistake to add a return statement to the middle of a function like this, shorting out the cleanup code; flow.js can catch errors like that at compile time.

Additional modules include must-override.js, which can mark methods which must be overridden (but which cannot be virtual); outparams.js, which ensures that any output function parameters have been set on a successful return from the function, and stack.js, which enforces a requirement that specific classes only be instantiated on the stack, since the garbage collector is not prepared to deal with them. Taras is also working on a checker for variables which shadow class members - a mistake which GCC does not catch now.

For the time being, this work is mostly used within the Mozilla project, though Taras would clearly like to see users from the wider community. He looks forward to a day when libraries are distributed with a plugin which ensures that the library is being used correctly. Another nice feature would be a distribution-wide DXR, enabling cross-package source browsing. For now, though, we have a set of tools that serves as a good proof of the concept that GCC plugins can be used for static analysis.

Comments (53 posted)

LCA: HackAbility

By Jonathan Corbet
January 27, 2010
Bright purple hair seems certain to make Liz Henry distinct from the crowd, but it's another attribute that she came to linux.conf.au 2010 to talk about: her wheelchair. It is, in essence, a machine to move her body around. It's not surprising that she would like it to be easy to fix or to hack on, but that is not how things are. Cars can be fixed easily; anybody with a few skills can start a car repair business. But this cannot be done with wheelchairs, which are much simpler devices. A wheelchair is a medical device, so the normal rules don't apply. Liz would like to change those rules; she also wants the rest of us to understand why we want to change them too.

People with disabilities may seem like a distinct group, but the fact of the matter is that almost all of us will be people with disabilities at some point in our lives. The average human, Liz says, will spend about eight years coping with some sort of disability. The result is a huge business, fueled by large amounts of money from insurance companies and government. That business is not greatly concerned with empowering disabled people; that's something we're going to have to take care of ourselves. We cannot depend on nanobots to keep us going as our bodies age; instead, we should be designing and coding for our future now.

[Liz Henry] People who want to hack their own disability solutions will find relatively little useful information online. Why? Possible reasons include profit motives in a highly lucrative industry, the perceived need for the intervention of medical experts when creating solutions, and concerns about liability should things go wrong. Disabled people also tend to be pushed into the role of passive charity recipients and isolated from each other. So what disability solutions exist come from the "medical industrial complex." Most of us will need these solutions at some point, and we'll want to be able to hack on them; the medical industrial complex is not much interested in helping us to do that.

The best progress which has been made so far is in the areas of vision, speech, and gaming. We're seeing less in mobility, so far. But, even there, simple hacks exist: it's common to see users of walkers who have fitted tennis balls over the feet to make them glide properly. (Your editor notes, with amusement, that Walmart is selling walker tennis balls for a mere $28 - the price of dozens of normal balls). This is a hack which is easily done, easily noticed, and easily copied, so it has spread widely. Pockets for crutches made of duct tape were another example presented in the talk.

A good example of how things fall down can be seen in the area of ramps. A ramp is not a complex device, but ramps must still be built properly if they are not to collapse or dump their users on the floor. Information on proper ramp building is discouragingly rare on the net, and what is there is not open to contributions. Other bits of interesting information - such as the soda bottle prosthesis - are available, but what we're seeing, still, is relatively small attempts. There's no real model for building community around this kind of information yet.

Disability-friendly software, too, is not an easy hack; accessibility tends to be treated as a last-minute add-on. Web site accessibility, too, is often an afterthought, and tends to be user-focused. This approach tends to lead to sub-standard solutions, but it also fails to lead to a free, do-it-yourself culture. We need good accessibility for developers too.

Liz talked about a number of projects aimed at making life better (and more hackable) for people with disabilities. Consider voice synthesis and screen reading: much of what's happening in this area is proprietary, but there are also projects like Festvox, Fire Vox, NVDA, and the tools at Full Measure (Speakup was not mentioned). Other interesting projects include:

Liz also mentioned the BBC accessible newsreader; she wishes that the BBC would release the code so that it could be incorporated into content management systems and made widely available.

On the other side, there are antifeatures which make life harder for those who would hack better solutions. These include systems which people with disabilities cannot contribute to and one-off solutions which cannot be extended or improved upon. Especially harsh words were reserved for those who exploit vulnerable people; there is an awful lot of incredibly expensive assistive technology out there. "Freaking out about liability" is also an antifeature; Liz feels that many of those concerns are greatly overblown. Selling out to industry - going for patents and profit rather than making technology available - is also a step in the wrong direction.

As an example of good and bad ways of doing things, Liz contrasted the Free Wheelchair Mission and Whirlwind Wheelchair International. The former makes dirt-cheap wheelchairs out of lawn chairs and bicycle wheels, then ships them by the container load to poor countries. It seems like a good idea, but dumping all those cheap chairs devastates any local market that may have developed. When the chairs break (which tends to happen soon), there's nobody left to help keep them going. Whirlwind, instead, is focused on partnering with local industry and sharing information, creating a more hackable solution with more people to hack on it.

The core message from the talk was that disabled people are hackers by necessity; we should bring them in, get their input, and enable them to create their own solutions. Their solutions will become our solutions. We should, Liz says, prepare to open-source our way out of the retirement prisons which are waiting for us.

Comments (5 posted)

Page editor: Jonathan Corbet

Security

Encrypting users' web data with Grendel

By Jake Edge
January 27, 2010

Web sites that store personal information can be worrisome. Depending on the type of information stored, disclosure of the data can have effects ranging from embarrassment to financial loss. There are steps that web services (or "cloud" services in the parlance of our times) can take to reduce the danger of data disclosure. The Grendel encryption mechanism for sensitive data, which was recently released under the MIT license, is a reasonable approach to the problem—and one that can now be examined and possibly adopted by other web services.

Grendel comes from Wesabe, which is an online money management tool. That means that Wesabe stores some of the most sensitive information a user has, so focusing on security is important to Wesabe and its users. Unlike many other web services, though, Wesabe has been very candid about the steps it takes to safeguard its users' data. The release of Grendel is just another step along that path.

The basic idea behind Grendel is a REST-based API that a web service can use to implement an encrypted store for users' data. The encryption is done using OpenPGP, with keys being generated when the user is created. The private key is then encrypted using the user's password, so that it is only when a user is logged in that their data can be decrypted.

The interface is meant for the back-end, "behind the firewall", so the rest of the web application uses the API over a local or private network to retrieve whatever data has been stored by the user. Grendel is meant to reduce or eliminate sensitive data leaks to third parties, not to protect against malfeasance from web site operators. The recent RockYou breach is mentioned as an example of the kinds of leaks Grendel is meant to prevent.

The decryption key for the OpenPGP private key (i.e. the user's password) is only available to the application while the user is logged in. Once that session terminates (either through an explicit log out or a session time out), any attacker will be unable to access the data unless they can crack the password. So, even a complete compromise of the database contents will not easily allow access to the sensitive data.

In some ways, Grendel is an outgrowth of another technique that is used by Wesabe, called the "privacy wall". The wall makes it difficult for attackers to correlate users and their private information even if the database contents are exposed. Instead of using a user_id field to connect a user table to another table, the technique uses a cryptographic hash of the username and password as the key into the second table. That way, a particular user's data in the second table cannot be retrieved without the user's password, which is only available during the lifetime of their session.

There are some additional wrinkles, of course. If a user forgets their password, their data is essentially lost. This might be viewed by some as a weakness to the system, but from a security standpoint it makes a lot of sense. One way to handle that problem might be storing the key value (i.e. hash of username and password) encrypted with other information, such as the answer to security questions. However, security questions have risks of their own to consider.

There is nothing truly groundbreaking in these techniques, but there are certainly useful ideas embodied in them. While Grendel itself may not be of interest to other web services, due to its architecture or its Java implementation, it is heartening to see a web service that takes security seriously enough to explain its methods. It certainly stands in stark contrast to other services and their "trust us" security policies—something to consider when storing sensitive data on the web.

Comments (8 posted)

Brief items

Backdoor in e107 CMS version 0.7.17

Bogdan Calin has reported an obvious backdoor in the e107 content management system (CMS) version 0.7.17. The e107 developers have pulled the offending release and issued an update for anyone that is running the code. In addition, they have enabled an update notification feature in the administrative interface for future problems. Click below for the report to the Bugtraq mailing list.

Full Story (comments: 8)

Multiple vulnerabilities in LedgerSMB

Those of you using the LedgerSMB accounting system will probably want to look at the attached advisory; a number of vulnerabilities - including file inclusion and SQL injection - have been fixed. At least some of these vulnerabilities are present in SQL-Ledger as well.

Full Story (comments: none)

New vulnerabilities

acroread: multiple vulnerabilities

Package(s):acroread CVE #(s):CVE-2009-3953 CVE-2009-3954 CVE-2009-3955 CVE-2009-3956 CVE-2009-3959 CVE-2009-4324
Created:January 22, 2010 Updated:September 8, 2010
Description: From the Red Hat advisory:

Adobe Reader 8.1.7 is vulnerable to critical security flaws and should no longer be used. A specially-crafted PDF file could cause Adobe Reader to crash or, potentially, execute arbitrary code as the user running Adobe Reader when opened. (CVE-2009-4324, CVE-2009-3953, CVE-2009-3954, CVE-2009-3955, CVE-2009-3959, CVE-2009-3956)

Alerts:
Gentoo 201009-05 2010-09-07
SuSE SUSE-SA:2010:008 2010-01-26
Red Hat RHSA-2010:0060-01 2010-01-20

Comments (none posted)

dokuwiki: multiple vulnerabilities

Package(s):dokuwiki CVE #(s):CVE-2010-0287 CVE-2010-0288 CVE-2010-0289
Created:January 22, 2010 Updated:January 27, 2010
Description: From the Debian advisory:

It was discovered that an internal variable is not properly sanitized before being used to list directories. This can be exploited to list contents of arbitrary directories. CVE-2010-0287

It was discovered that the ACL Manager plugin doesn't properly check the administrator permissions. This allow an attacker to introduce arbitrary ACL rules and thus gaining access to a closed Wiki. CVE-2010-0288

It was discovered that the ACL Manager plugin doesn't have protections against cross-site request forgeries (CSRF). This can be exploited to change the access control rules by tricking a logged in administrator into visiting a malicious web site. CVE-2010-0289

Alerts:
Debian DSA-1976-1 2010-01-22

Comments (none posted)

kernel: missing CAP_NET_ADMIN checks

Package(s):kernel CVE #(s):CVE-2010-0007
Created:January 22, 2010 Updated:March 21, 2011
Description: From the SUSE advisory: Missing CAP_NET_ADMIN checks in the ebtables netfilter code might have allowed local attackers to modify bridge firewall settings.
Alerts:
Mandriva MDVSA-2011:051 2011-03-18
Red Hat RHSA-2010:0161-01 2010-03-23
CentOS CESA-2010:0147 2010-03-18
CentOS CESA-2010:0146 2010-03-17
Red Hat RHSA-2010:0147-01 2010-03-16
Red Hat RHSA-2010:0146-01 2010-03-16
SuSE SUSE-SA:2010:014 2010-03-03
Fedora FEDORA-2010-0919 2010-01-22
SuSE SUSE-SA:2010:007 2010-01-22
Debian DSA-2004-1 2010-02-27
Debian DSA-2003-1 2010-02-22
SuSE SUSE-SA:2010:013 2010-02-18
Debian DSA-1996-1 2010-02-12
SuSE SUSE-SA:2010:010 2010-02-08
SuSE SUSE-SA:2010:012 2010-02-15
Ubuntu USN-894-1 2010-02-05

Comments (none posted)

kernel: null pointer dereference

Package(s):kernel CVE #(s):CVE-2010-0006
Created:January 21, 2010 Updated:February 11, 2011
Description:

From the NVD entry:

The ipv6_hop_jumbo function in net/ipv6/exthdrs.c in the Linux kernel before 2.6.32.4, when network namespaces are enabled, allows remote attackers to cause a denial of service (NULL pointer dereference) via an invalid IPv6 jumbogram, a related issue to CVE-2007-4567.

Alerts:
Fedora FEDORA-2011-1138 2011-02-07
Ubuntu USN-894-1 2010-02-05
Fedora FEDORA-2010-0919 2010-01-22
Fedora FEDORA-2010-0823 2010-01-20
SuSE SUSE-SA:2010:010 2010-02-08

Comments (none posted)

kernel: information leak

Package(s):kernel CVE #(s):CVE-2010-0003
Created:January 25, 2010 Updated:March 23, 2010
Description:

From the Red Hat bugzilla entry:

When print-fatal-signals is enabled it's possible to dump any memory reachable by the kernel to the log by simply jumping to that address from user space.

Or crash the system if there's some hardware with read side effects.

The fatal signals handler will dump 16 bytes at the execution address, which is fully controlled by ring 3.

Alerts:
Red Hat RHSA-2010:0161-01 2010-03-23
CentOS CESA-2010:0147 2010-03-18
CentOS CESA-2010:0146 2010-03-17
Red Hat RHSA-2010:0147-01 2010-03-16
Red Hat RHSA-2010:0146-01 2010-03-16
Ubuntu USN-894-1 2010-02-05
Fedora FEDORA-2010-0919 2010-01-22
Debian DSA-1996-1 2010-02-12
SuSE SUSE-SA:2010:010 2010-02-08
SuSE SUSE-SA:2010:012 2010-02-15
SuSE SUSE-SA:2010:014 2010-03-03
Debian DSA-2004-1 2010-02-27

Comments (none posted)

lintian: multiple vulnerabilities

Package(s):lintian CVE #(s):CVE-2009-4013 CVE-2009-4014 CVE-2009-4015
Created:January 27, 2010 Updated:January 28, 2010
Description: Debian's "lintian" package checker suffers from directory traversal, format string, and command execution vulnerabilities.
Alerts:
Ubuntu USN-891-1 2010-01-28
Debian DSA-1979-1 2009-01-27

Comments (none posted)

phpgroupware: multiple remote vulnerabilities

Package(s):phpgroupware CVE #(s):CVE-2009-4414 CVE-2009-4415 CVE-2009-4416
Created:January 27, 2010 Updated:January 27, 2010
Description: The phpgroupware system suffers from multiple remotely-exploitable vulnerabilities, including SQL injection, directory traversal vulnerabilities, and a cross-site scripting issue.
Alerts:
Debian DSA-1978-1 2010-01-26

Comments (none posted)

Page editor: Jake Edge

Kernel development

Brief items

Kernel release status

The current development kernel is 2.6.33-rc5, released on January 21. It contains a number of fixes - the patch rate for 2.6.33 remains fairly high.

As of 2.6.33-rc5, there are 23 unresolved regressions (of 75 reported) in this development kernel.

Stable updates: 2.6.32.5 was released on January 22, followed by 2.6.32.6 on January 25; both contain a fair number of important fixes. 2.6.32.7 is in the review process as of this writing; it contains 98 fixes, and can be expected sometime on or after January 28.

Comments (none posted)

Quotes of the week

So I can work with crazy people, that's not the problem. They just need to _sell_ their crazy stuff to me using non-crazy arguments, and in small and well-defined pieces. When I ask for killer features, I want them to lull me into a safe and cozy world where the stuff they are pushing is actually useful to mainline people _first_.

In other words, every new crazy feature should be hidden in a nice solid "Trojan Horse" gift: something that looks _obviously_ good at first sight.

-- Linus Torvalds

There is only one real sensible solution for this: Do _not_ use kgdb - which is the modus operandi of every sane kernel developer on the planet.
-- Thomas Gleixner

OK... lookup_instantiate_filp() is a god-awful mess, so it's OK to be confused by it - its authors definitely had been.
-- Al Viro

Comments (4 posted)

A module for crashing the kernel

By Jonathan Corbet
January 26, 2010
Normally, a kernel which doesn't crash is considered to be a good thing. It can be a source of true frustration, though, for those who want to see the system go down in flames. The reliability of the system means that somebody waiting for a crash may grow old indeed in the process.

Simon Kagstrom has heard the pain expressed by such users; in response, he has posted a kernel module just for people who want to be able to destroy their systems on demand. This module creates a directory (provoke_crash) in debugfs, filled with a number of useful files. For those with simple needs, a write to bugon results in a straightforward BUG() call. Users with more discriminating tastes can write to null_dereference to cause a null pointer dereference, overwrite_allocation to write beyond a heap allocation, or corrupt_stack to overwrite the stack. And truly kinky users can go for oops_interrupt_context to get a null dereference in softirq mode, write_after_free to step on freed memory, or unaligned_load_store to perform badly-aligned memory operations.

Needless to say, this isn't a module one would ordinarily want to leave loaded into a production system; it's better kept in a secret place and pulled out after the kids go to sleep. Unless, of course, you have a real use for it; Simon has been employing it to make sure that kmsg_dump() does the right thing in various crash scenarios. For most developers, though, work is normally dominated by the need to avoid crashes; since they'll have little use for this feature, it's not clear that this little module will ever make its way into the mainline.

Comments (16 posted)

fincore()

By Jonathan Corbet
January 27, 2010
Linux has long had the mincore() system call which allows an application to determine whether a given page is in RAM or not. There is no easy way, though, to tell whether a given page from a file is in the page cache or not. An application can mmap() the file and use mincore() on it, but that can be slow. So Chris Frost has proposed a new fincore() system call to handle this task:

    int fincore(int fd, loff_t start, loff_t len, unsigned char *vec);

A call to fincore() will look at the pages of the file associated with fd in the range indicated by start and len. For each page of the file, one byte of vec will be set to a non-zero value if that page is in memory. Naturally, this answer is an approximation - the situation can change while the system call is running.

That, however, can be good enough for Chris's needs. His objective is to speed up applications which perform large numbers of non-sequential file reads. The traditional readahead code deals poorly with this kind of application, since the access pattern cannot be predicted ahead of time. But the application often does know about a sequence of reads in advance; if the kernel could be told to pull in those pages ahead of time, it could order the I/O operations optimally and make the whole thing go faster. When doing this for sqlite and the GIMP, Chris reports significant speedups.

The fadvise() system call can be used to request prefetching of file data. But there's a problem: it's hard for a prefetch library to know how much system memory is available. If too little data is prefetched, the performance gains will not be what they could be. Prefetching too much data, however, can lead to thrashing. Hence the fincore() system call: if prefetched pages are no longer present by the time the application gets around to using them, the library knows that it is asking for too much and can back off.

Andrew Morton likes the patch:

I must say, the syscall appeals to my inner geek. Lot of applications are leaving a lot of time on the floor due to bad disk access patterns. A really smart library which uses this facility could help all over the place.

Jamie Lokier, though, wondered if it might not be a better idea to find a way to inform applications more directly that their pages are being evicted prior to use.

This is the first posting for this system call, so it has not gotten a lot of attention yet; more discussion will certainly be necessary before it could be merged. In the mean time, the libprefetch site has more information on this whole project.

Comments (4 posted)

Kernel development news

LCA: Graphics driver ponies

By Jonathan Corbet
January 26, 2010
Those of you who have come to appreciate Dave Airlie's kitten-filled presentations might just have been dissatisfied with his linux.conf.au talk, which was called "So you moved graphics drivers to the kernel.. what next? I can haz ponies?" But ponies, too, can be cute, and the update on the state of graphics drivers in the kernel was well worth the listening.

It has now been about a year since kernel mode setting (KMS) was merged into the mainline kernel. KMS ends the "mess" which came from having graphics drivers in user space; digging out of that particular hole took a good seven years or so. But now our graphics drivers are in the kernel, just like most other drivers.

Beyond cleaning up the mess, there are a few other good reasons for merging KMS. One is that the system is now able to make full use of the power-saving features of the hardware; before KMS, the kernel never really knew enough about what was going on with the hardware to do this. The Intel drivers can now perform as well as Windows with regard to power saving; the ATI drivers, instead, are not quite there yet. Another nice [Dave
Airlie] feature is the ability to use a kernel debugger on a system with graphics running; it's now possible to trap into the debugger, then return to a running system and have everything just work.

One of the reasons why KMS took so long to merge is that it places a number of new requirements on the kernel. At the top of the list is a proper manager for graphical memory. That's a hard problem, one that the graphics developers always intended to get to sometime Real Soon Now. Eventually the TTM developers got to it, but they quickly ran into a number of API difficulties. After some effort, the Intel developers decided that a generic approach to the memory management API wasn't going to work; out of that realization came the GEM memory manager, which only tried to solve the Intel problem.

Developers working on ATI chipsets, in turn, soon realized that GEM did not have the capabilities that they needed. So they went back to TTM, but not before bolting something that looks a lot like the GEM API onto it. TTM was recently merged, making KMS possible for ATI chipsets as well.

So what is coming? One future feature is the Gallium 3D architecture. Gallium, says Dave, is starting to work, but full functionality will take a while yet. Moving drivers to Gallium is going to be a painful exercise; there are already plenty of APIs that these drivers need to support. DRI2 is also coming along. This feature really needed KMS to work properly, especially when compositing is being used. There are still performance issues which must be resolved, though.

Another thing to look forward to is the Wayland display server. Wayland can be seen as a simpler, smaller replacement for X built on KMS. It can run GTK and GL applications now; there is also an X server emulator which can run on top of it. A few difficulties remain, including the fundamental fact that Wayland is not X; since X is the standard in this area, alternatives are going to be hard to sell. The Wayland developers also have not yet really dealt with the input problem, but input is a big piece of the X code. So Wayland, too, will be a while in coming; it may find its way into embedded situations first.

Dave spent some time on the current state of the graphics drivers. Intel, he says, is currently in the leading position. It supports KMS for everything - well, almost everything; the "chipset we won't name" (the proprietary GMA500) still lacks support. The driver is feature-complete, but Dave isn't quite ready to call it "mature"; another release or two will be required first. As discussed here previously, the driver will need to retain user mode setting (UMS) support for some time, but the current upstream X.org sources have already removed UMS from the X server.

The ATI/AMD drivers are further behind, but getting closer; this driver is harder than the Intel driver, due to the large number of chipset variations. Chipsets from R100 to R700 are currently supported; R800 support can be expected within a few weeks. The driver works "nearly as well as the old stuff" at this point; suspend and resume work better than before. Support for power-saving features is missing but expected for 2.6.34. The Radeon driver is currently in the staging tree, but it might move out before the end of the 2.6.33 development cycle.

What about the RadeonHD driver? That fork of the driver is primarily the result of a disagreement over the use of ATI's BIOS tables; the Radeon driver has an interpreter for these tables, while RadeonHD reimplements the functionality that those tables provide. Using the BIOS tables makes life a lot easier; it lets the driver ignore a lot of the details associated with different chipset variations. The BIOS table code is part of the KMS implementation which has been merged into the mainline; that should, Dave thinks, resolve this disagreement.

The "pony" displayed for the Nouveau discussion was a Trojan horse. Nouveau, of course, was merged for 2.6.33. The driver has just lost its user-mode support; it will be KMS only. Chipsets from the NV4 through the G80 are supported, with the final pieces to be filled in soon. The "ctxprogs" firmware is being figured out; the NV40 version has already been replaced with a rewritten, freely-licensed equivalent and NV50 is in the works. Dave noted that, whatever one thinks about NVIDIA's approach to working with the community, its hardware tends to be relatively good and easy to work with.

When Dave was asked about support for non-Linux systems, he replied that most of them have been left behind at this point. There is, apparently, an OpenSolaris port being done within Sun, but no code has been released from that group. One other audience member asked about running X without root privileges: that does work now, and Moblin is doing it. There are some problems remaining, though, especially with fast user switching. In the absence of a revoke() system call, there's no way to guarantee that one user isn't listening in on another. Since revoke() is known to be a hard problem, it's not clear how this issue will be resolved.

Comments (32 posted)

Back to the drawing board for utrace?

By Jake Edge
January 27, 2010

The utrace tracing framework has had a tortuous path towards the mainline, but it always seemed like it was headed that direction. Over the past week or so, things have gotten rather murkier for the mainline inclusion of utrace. Linus Torvalds made a pronouncement that would seem to leave SystemTap without a future in the mainline—something that many had suspected for a while—but also put the future of utrace in doubt. Further discussion may have provided a way forward, but, at least in its current form, mainline utrace seems very unlikely.

The discussion resulted from a request by Frank Ch. Eigler to include utrace into linux-next. That led to a discussion about whether it was ready for linux-next—because it was likely to be merged in the next release cycle—or whether it should spend some time in another tree. Since an earlier version of utrace was in Andrew Morton's -mm tree, that was a potential path. Morton said that utrace "didn't break anything", but:

I still don't think I've seen a really compelling reason for merging it. At least, I wouldn't be able to explain why we did it. But presumably there _are_ such reasons, because it was a lot of development work.

Someone please sell this to us.

Morton also dredged up a response he had gotten from Oleg Nesterov the last time he asked, which listed various potential uses for utrace. In-kernel uses for utrace are important—new features are rarely merged without one—and an earlier utrace merge attempt ran into opposition because it lacked one. This time around, Nesterov and Roland McGrath included a rewrite of the ptrace() system call using utrace as part of the patch submission. It was hoped that rewriting the notoriously ugly ptrace() code using the cleaner utrace API would be the last hurdle for inclusion into the mainline.

But, replacing the guts of the ptrace() call, even though it may clean things up, is controversial. ptrace() is part of the kernel ABI that must be maintained—ugly or not—but cleaning it up is not without its risks, as Morton points out:

ptrace is a nasty, complex part of the kernel which has a long history of problems, but it's all been pretty quiet in there for the the past few years. This leads one to expect that a rip-out-n-rewrite is a high-risk prospect. So, quite reasonably, one looks for a good reason for taking such risk.

The risk is small, though, according to Eigler, because "this code has been deployed in fedora and rhel for several *years*, with millions of users. It's not some rickety experiment." Eigler also added to Nesterov's list of utrace uses as SystemTap's user-space probing is based on utrace. But SystemTap and one of the other potential uses on that list, namely reworking seccomp to use utrace, are what set Torvalds off:

So if things like system tap and "security models that go behind the kernel by tying into utrace" are the reasons for utrace, color me utterly uninterested. In fact, color me actively hostile. I think that's the worst possible situation that we'd ever be in as kernel people (namely exactly the "do things in kernel space by hiding behind utrace without having kernel people involved")

Torvalds's complaint stems from the fact that utrace provides no user-space interface at all. It is purely an internal kernel API that is meant to be used by kernel code like the ptrace() rewrite, but also for kernel modules, which is part of what worries Torvalds. It provides lots of hooks that can be used by "random crazy out-of-tree crap", but doesn't provide any benefit to user space at all, he said:

If somebody were to argue that "this is a simple series of patches to clean up ptrace and make it possible to strace a debugged process", then that would have been different. That's not what you or others have been doing. You've been pushing exactly the _reverse_ of that, namely how great it is for some random totally new features that I'm convinced aren't even used by a lot of people.

One of the biggest problems with ptrace() is its signal-oriented interface. Programs using ptrace() act as the parent process of the tracee and must use wait() to detect state changes. For that reason, there can only be one ptrace() active for a particular process. So an strace of a program that is being debugged with gdb will not succeed. The ptrace() implementation using utrace would change that, but not directly, as there would still need to be a kernel piece that attached another utrace engine.

An in-kernel gdb "stub" using utrace—floated as an RFC back in November—could provide that kernel piece, but was met with a fair amount of resistance when it was proposed. The limitation that ptrace() imposes is seen as something that could, perhaps should, be lifted, but adding a relatively large, kernel-only API to do that is excessive. As Torvalds puts it:

Maybe somebody would be interested in trying to take the utrace improvements, and scaling down what they promise, and ignoring all input except for "I want to strace and gdb at the same time".

So stop the crazy "new kernel interfaces" crap. Stop the crazy "maybe we can use it for ftrace and generic user event tracing too". Stop the crazy.

The elephant in the room, of course, is SystemTap. It creates, builds, and loads kernel modules for doing its tracing, and uses utrace for the user-space tracing. That model is not popular with most kernel developers, especially for an out-of-tree solution—the APIs that it relies on are far too volatile. SystemTap must be updated when those interfaces change, and all of the previous versions must be maintained so that SystemTap can still be used with older kernels. Because of that, SystemTap may be out-of-sync with development kernels, which makes its utility for kernel hackers quite small.

The utrace proponents are pushing it as something useful in its own right, completely separate from its use in SystemTap, but one gets the sense that many of the kernel developers aren't quite buying that. Ted Ts'o tries to explain his concerns to Eigler

[...] utrace doesn't export a syscall (which is an ABI that we are willing to promise will be stable), but rather a set of kernel API's (which we never promise to be stable), and the fact that there will be out-of-tree programs that are going to be trying to depend on that interface (much like Systemtap does today when it creates kernel modules) [...]

He goes on to compare the situation to that of the NVIDIA graphics drivers, which leads Kyle Moffett to propose a variation on Godwin's law: "As an LKML discussion grows longer, the probability of an unfavorable comparison involving nVidia or Microsoft approaches 1." More to the point, though, Moffett said he was uninterested in SystemTap:

I'm interested in things like the ability to stack gdb with strace, the RFC gdb-stub posted a week ago, etc. None of those abilities would be out-of-tree modules at all [...]

Ts'o sees those features as potentially useful, but points out that they should be submitted with utrace for review. It may be that utrace in its present form does not survive that review:

So what should be reviewed is utrace *plus* these other userland interfaces, which may get critiqued and improved, and utrace patches can be reviewed in light of these new features. But be warned.... if it turns out that only 30% of utrace is only needed to support gdb stacking with strace, etc., the other 70% will likely get ejected and the utrace patches streamlined to support these in-tree users.

Without an in-tree "killer feature" that only utrace can provide, there is going to be resistance to merging such an easily-abused API. Several suggestions were made—notably by Torvalds and Ingo Molnar—to enhance ptrace() itself to support some new features (such as multiple active calls or the ability to read/write more than a word at a time between the two processes), but that would mean scrapping much or all of the utrace work. Nesterov and McGrath, who are the ptrace() maintainers, have been largely silent throughout the discussion, but, previously, they have made it clear that they would much rather work with the utrace-based ptrace() implementation. So it is unclear when or if enhancements to the current code might happen.

Without utrace, SystemTap will have to find other ways to hook user space, but that doesn't really faze the kernel developers—particularly after Torvalds's unequivocal rejection of that approach—as there are other tracing solutions in the pipeline. Ftrace and perf events are slowly building capabilities, and are doing so in-tree. They are likely to grow the needed features to support kernel and user-space tracing a la SystemTap (and DTrace). Molnar specifically invites the SystemTap developers to collaborate:

Also, if any systemtap person is interested in helping us create a more generic filter engine out of the current ftrace filter engine (which is really a precursor of a safe, sandboxed in-kernel script engine), that would be excellent as well. Right now we support simple C-syntax expressions like:
    perf record -R -f -e irq:irq_handler_entry --filter 'irq==18 || irq==19'
More could be done - a simple C-like set of function perhaps - some minimal per probe local variable state, etc. (perhaps even looping as well, with a limit on number of [predicate] executions per filter invocation.)

It is unfortunate, in many ways, that SystemTap has gotten to this point. While it is possible that Torvalds could change his mind, he and other kernel developers find the new tracing features to be "a million times superior" to SystemTap. That could leave Red Hat holding the SystemTap bag for quite some time to come, as it will need to support it for existing, and likely future, RHEL versions. It is interesting to note that this alternate solution, based on Ftrace, etc., is also largely coming out of Red Hat.

It seems possible that utrace will be a casualty here as well. By incorporating features that were needed for SystemTap, and not providing a user-space interface, it tried to both do too much and too little. There are some potential ways forward, but its unclear whether they will be pursued. Torvalds points to the realtime tree as an example of how to get "crazy" things merged:

Yeah, it's taken them years, and they still have out-of-tree stuff. And yeah, they had to change some things to make them more palatable to the mainline kernel - the whole fundamental raw spinlock change is just the most recent example of that.

But on the whole, I think it's actually worked out pretty well for them. I think the mainline kernel has improved in the process, but I also suspect that _their_ RT patches have also improved thanks to having to make the work more palatable to people like me who don't care all that deeply about their particular flavor of crazy.

There are definitely lessons here, but the standard ones don't seem to apply. SystemTap and utrace were developed in the open, as free software from the outset, and were fairly often discussed on linux-kernel. SystemTap in particular was regularly criticized, to seemingly no avail. The biggest lesson—and the hardest to learn, especially after a feature has shipped—may be that ignoring the advice and complaints of the kernel developers is likely to come back and bite in the end. It is not terribly surprising, really, but that seems to be what is happening here.

Comments (13 posted)

Replacing ptrace()

By Jonathan Corbet
January 27, 2010
Much of the POSIX system call interface is known for the elegance and simplicity of its design; that is what has enabled this API to endure and thrive for decades. The ptrace() system call has no such reputation. One of the many motivations behind the development of the utrace layer (see the accompanying article) was first to clean up the implementation of ptrace(), but then to enable it to be replaced entirely. Subsequent discussion shows that this is a distant hope, though, and that we will be struck with ptrace() for a long time.

The purpose of ptrace() is to allow one process to monitor and modify the state of another. It exists to support interactive debuggers and related utilities like strace, but other users exist as well. User-mode Linux uses ptrace() for its internal management, and there are various sandboxing schemes which use it. In general, users are able to get ptrace() to do what they want, but they rarely come away pleased with the experience.

What are the problems with ptrace()? Whenever system calls have to work with extended state within the kernel, the preferred mechanism for referring to that state in user space is the file descriptor. With file descriptors, many of the existing system calls do natural things, and well-defined mechanisms exist for event multiplexing. But ptrace() doesn't use file descriptors; it depends, instead, on a rather more arcane mechanism. A process to be traced is removed from its normal place in the process tree; the process doing the tracing becomes its new parent. In other words, ptrace() sets up a sort of temporary foster home for children under scrutiny. The new parent can then learn about events in the child through the wait() system call.

This API is hard to fit into normal application event loops. It also implies that any given process can be traced by only one other process at any given time. This may not seem like a problem - how often does one want to run two debuggers on a process? - but it does get in the way. Developers working on debugging tools and users wanting to trace a sandboxed process are two types of users who cannot do what they want with ptrace(). It is also defined as a complex, multiplexer call (see the man page for details) which is hard to understand and hard to use efficiently.

Finally, ptrace() is hard to implement correctly and consistently. As a result, there has been a long history of obnoxious bugs associated with it, and user-space code which uses ptrace() tends to become encrusted with non-portable workarounds. It is, in summary, not surprising that there is interest in creating a replacement. Oleg Nesterov expressed things succinctly: "I must admit that personally I think the current ptrace api is unfixable, we need the new one in the long term."

Getting to the new one could be hard, though. The first problem is that ptrace() is a standard function which is part of the kernel ABI. As long as users exist, it really cannot be removed from the kernel. So a ptrace() replacement will not improve life for the kernel development community anytime in the near future; indeed, it will make it harder, since there will be two tracing interfaces to support instead of one. Duplicating functionality in this way can be done when the need is strong enough, but it's not something that the community will rush into without a great deal of thought.

Maintaining ptrace() as a compatibility interface might be acceptable if it were clearly a temporary thing with a clear possibility of removal in the future, and if there were clear advantages of doing so. But it's not entirely clear where the advantages are. For example, Kyle Moffett said:

The killer app for this will be the ability to delete thousands of lines of code from GDB, strace, and all the various other tools that have to painfully work around the major interface gotchas of ptrace(), while at the same time making their handling of complex processes much more robust.

There are a couple of related problems with this idea, starting with the fact that tools like GDB don't just run on Linux systems with shiny new kernels. They need to work on older kernels indefinitely, not to mention on all those other platforms which lack the good taste to implement every new system call created for Linux. So those "thousands of lines" (and it really is that much code) will not be going anywhere; the GDB developers will have to maintain them forever - or something fairly close to that.

So for GDB, too, a new tracing API would represent an increase in the maintenance load - if they use it. But the fact of the matter is that special, Linux-only interfaces tend to have very limited uptake. As expressed by Ingo Molnar:

Special Linux system calls have a checkered past, they tend to not be used by much anything, and thus they tend to be a breeding ground of both bugs, maintenance complexity and security problems. Lack of attention is never good.

That said, Tom Tromey has indicated that GDB might use a new API if there were clear advantages to doing so:

Nevertheless, if the Linux kernel were to present a new user-space API, and if it had an advantage over ptrace, then we would port GDB to use it. There are other platforms where, IIRC, we now use some /proc thing instead of ptrace.

Tom goes on to list a few features that he would like to see in a replacement for ptrace(). That highlights one final obstacle to any kind of new API: no such thing has been implemented or even specified by anybody. The creation of a new system call - especially for a task as complicated as tracing - is not an easy thing to do. Without a great deal of care, we risk creating yet another substandard API with its own warts which must be maintained forever. So a proposed replacement would have to get through an extended process of criticism, argument, and opposition, and it would have to demonstrate some real users - a GDB port, for example. That, alone, ensures that any ptrace() replacement will be years away.

So it's not surprising that justifying utrace as a means to replace ptrace() is not working very well, and it's not surprising that developers are talking about possible ways of extending ptrace() instead. Playing with the ptrace() API is not without its risks - code which uses it tends to be a bit of a house of cards which can be broken by subtle changes in semantics. But it may still be an easier route to moderately more sane and usable tracing in the relatively near future.

Comments (2 posted)

Patches and updates

Kernel trees

Core kernel code

Development tools

Device drivers

Memory management

Networking

Architecture-specific

Virtualization and containers

Benchmarks and bugs

Miscellaneous

Page editor: Jonathan Corbet

Distributions

News and Editorials

Fedora launches Cloud SIG

January 27, 2010

This article was contributed by Nathan Willis

The Fedora project started an interest group focused on cloud computing recently. Red Hat's Greg DeKoenigsberg kicked off the effort by launching a mailing list and inviting those interested in improving Fedora's support for cloud services to join. The first goal DeKoenigsberg proposed is to create modern, well-maintained Fedora images for Amazon's Elastic Compute Cloud (EC2) service — but there are many other potential goals on the horizon.

First things first: EC2

According to DeKoenigsberg's initial email to the list, the impetus for the new group is that the most recent Amazon Machine Images (AMIs) Amazon provides for EC2 are based on Fedora 8. Released in late 2007, Fedora 8 shipped with kernel 2.6.23, and naturally includes now outdated versions of important libraries and tools. Moreover, when users try to update their Fedora 8 AMIs, the updates appear to fail, thus giving Fedora a black eye from the user's perspective.

In fact, it is not possible to update an AMI to a new kernel as one would with a physical machine; the AMI itself is a read-only Xen virtual machine image that is restored to its saved state on each new instance, including a reboot. In addition to that, the AMI does not itself contain a kernel image; rather it is linked to a separate Amazon Kernel Image (AKI) via an XML manifest file. Consequently, users can try to update the kernel in their AMIs, but when rebooted, the virtual machines load the AKI kernel linked to in the manifest rather than the kernel that appeared to be installed via the package updater. EC2 users can build their own AMIs (with recent kernels and packages) and share them with the public, but the publicly available Fedora images are reportedly of buggy quality — and a potential security risk.

EC2's design is not Fedora's fault, of course, but as DeKoenigsberg put it, the confusion among end users is an opportunity for the distribution to step in and help build better tools. On the mailing list, Fedora project members have subsequently begun hashing out plans to create the updated AKI and AMI images based on current, Fedora 12 sources. The group is also hoping to work with Amazon on a way to brand its Fedora AMIs as the "official" images, to distinguish them in the minds of EC2 customers from home-brewed images that might not work reliably.

Following AMI testing, the group plans to add creating the EC2 image to the existing Fedora release process.

What next?

Updated AKIs and AMIs are relatively straightforward, so list discussion naturally turned to what other projects the group should undertake. Among the ideas are providing a tool set for users to easily customize their own AMIs based on the official Fedora images (similar to the way Fedora "spins" are created), providing a Fedora mirror running within EC2 to provide packages to other EC2 users. Cloud services outside of EC2 (such as Eucalyptus and Rackspace) are important too, but the decision to focus initially on EC2 is based on the Amazon service's popularity.

In addition to building images for other cloud platforms, one of the group's stated goals is to build tools and APIs to enable Fedora users to migrate their instances from one cloud service to another — including in-house "private clouds" of particular interest to corporate users.

This would potentially tie in to several existing Red Hat projects, such as oVirt, RHEV-M, and Deltacloud. oVirt and RHEV-M are virtualization management tools that would be useful for users running Fedora as their hypervisor OS. Deltacloud is an abstraction layer for applications running on cloud services; it attempts to provide APIs that allow the application to be moved from one cloud service to another without modification. It currently supports a REST API and Ruby bindings, with more reportedly on the horizon.

As DeKoenigsberg put it, Fedora can appear in the cloud computing stack in three places: as the hypervisor running the guest machines, as the management platform for the entire cloud, and as the guest operating system. Building reliable, modern EC2 images helps Fedora fulfill the third role, and affects the greatest number of current users, so it should be the first target. The hypervisor tools help Fedora fulfill the first role, so they also fall inside the scope of the cloud interest group. How to improve Fedora's suitability for middle role, however, remains an open question.

As long as we're here, what is a cloud anyway?

Perhaps predictably, the members of the new interest group have also engaged in the never-ending discussion over what defines "cloud computing" itself. In particular, is cloud computing different in any substantial way from virtualization, or is it merely a business model using virtualization technology?

The question is not an entirely academic one; to some, as a not-for-profit community project, Fedora should not focus its energies on building business tools for Red Hat, particularly the presently closed-source RHEV-M. Red Hat is pursuing a cloud computing strategy; it held a forum in July 2009 and has just announced a second for February 10, 2010. DeKoenigsberg expressed his opinion on the question, observing that although many cloud service vendors start by creating a "product," it is always built upon tools — but that if one starts by building good open source tools, a product of benefit to a company like Red Hat inevitably emerges. "I'm interested in tools approaches that help our users. I think that's the advantage that Fedora can provide — a group of knowledgeable folks who share and refine the best tools."

Essentially the process is the same as what has already happened in the server market. If the tools (such as Linux) are good enough, the opportunity to run a profitable business supporting them arises. Regardless of whether the most popular platforms are built upon entirely free software stacks, it is undeniable that users want to run Linux on cloud services. Fedora is wise to make sure that its distribution runs well on EC2 and other cloud services, and to lay the groundwork for serving well in whatever roles become popular in cloud computing, on Red Hat products or otherwise.

Comments (none posted)

New Releases

Debian Edu lenny rc1

Debian Edu/Skolelinux has announced the first release candidate of its Lenny (Debian 5.0) based distribution. "Since the previous test release (alpha3) all remaining blocker bugs got fixed and some of the features broken in the last release are now working."

Full Story (comments: none)

Guitar-ZyX LiveOS 0.4.1 released

Version 0.4.1 of Guitar-ZyX LiveOS has been announced. "Guitar-ZyX(tm) is a LiveDVD/USB operating system distribution, that can immediately boot both your Nintendo(tm)-DS, and your x86/64 PC, into a guitar pre-amp f/x processing appliance, complete with wireless dual screen touchpad remote control. You can even velcro or embed the NDS in your guitar if so inclined. In addition to switching among 77+ different f/x presets, the NDS remote control's touchscreen can also linearly control any two of about a hundred independent f/x parameters in real-time. I.e. a very cost effective TouchScreenWhammyPad."

Full Story (comments: none)

Distribution News

Debian GNU/Linux

Security Support for Debian 4.0 to be discontinued on February 15th

Security support of Debian 4.0 "etch" will be discontinued on February 15, 2010. "One year after the release of Debian GNU/Linux 5.0 alias 'lenny' and nearly three years after the release of Debian GNU/Linux 4.0 alias 'etch' the security support for the old distribution (4.0 alias 'etch') is coming to an end next month. The Debian project is proud to be able to support its old distribution for such a long time and even for one year after a new version has been released."

Full Story (comments: none)

Fedora

Fedora Board recap

Click below for a recap of the January 21, 2010 meeting of the Fedora Advisory Board. Topics include virtio-win drivers, and Status update from Strategic Working Group.

Full Story (comments: none)

Warren Togami: spamassassin-3.3.0 RPM Packages for Fedora or RHEL-5

Warren Togami looks at the release of spamassassin-3.3.0 and the availability of RPM packages for Fedora and Red Hat Enterprise Linux 5. "This is a very important upgrade for mail administrators as this is the first major version upgrade in nearly 3 years. While many improvements were made to the rules, for the most part it is almost a simple matter of a drop-in replacement for spamassassin-3.2.x. 3.3.0 trunk has generally of better quality in both stability and spam detection capability than 3.2.5 for many months now. I personally have been running snapshots leading to this beta release on my production RHEL5 server since early 2009."

Comments (none posted)

Fedora Research Interviews

Diana Martin is looking for Fedora contributors who are willing to contribute to her research. "All you need to do to qualify is be a Fedora contributor. I am looking for interviews from everyone including but not limited to: developers, ambassadors, designers, QA people, documentation people, and sys admins. This list also includes those who work directly for Red Hat."

Comments (none posted)

An overdue post on Fedora's target audience

Robyn Bergeron shares some thoughts on Fedora's target audience. "But there is no man behind the curtain at Fedora. The transparent, community-oriented nature of Fedora obviously ensure that this happens. Fedora has a mission, and Values, and a fabulous community, but we have no TARGET AUDIENCE specifically defined, and we have no GOALS, at least as far as a list of things we wanted to accomplish in the short term, or long term, to get us from point A, to point B... or even a vague definition of where we are right now (point A), and what Point B might be. In essence, right now, Fedora's goal is to "be the best that we can be," in order to address a target audience that we are currently, I suspect, somewhat in the dark about the current state of, and completely undefined as to who we would like that audience to be in the future."

Comments (none posted)

Greg DeKoenigsberg: Fedora's Goals

Greg DeKoenigsberg shares some thoughts on Fedora's goals and target audience. "To say that we have NO TARGET AUDIENCE and NO GOALS is not quite accurate, I don't think. We have both of those things, but they are implicit in the work we do, and in such an incredibly large community, everyone's work is not always complementary. First of all, I believe that every single individual who does work in the Fedora community has short-term goals. If they didn't, nothing would ever happen. I also believe that every single individual has an extremely clear idea of their target audience: someone just like them, for whom they want a particular activity to be easier/better the next time."

Comments (none posted)

Fedora Medical SIG. Updates and Cfp.

Susmit introduces the Fedora Medical Special Interest Group. "This week, we had the first meeting of our newly formed Medical SIG. We decided that our primary work will be identifying different workflows (well, there will be many, may be we will do some generalisation) and attacking one at a time. We decided to start with a clinical practitioner's workflow."

Comments (none posted)

Gentoo Linux

Gentoo Foundation Trustee Elections 2010

The Gentoo Foundation Inc. is preparing for its annual Trustee Elections. "The nomination period is four weeks commencing early February, the voting period is four weeks in March, the newly elected Trustees take their seats in early April, as soon as the results of the ballot are known. Exact dates will be set by the Gentoo Elections project."

Full Story (comments: none)

SUSE Linux and openSUSE

Brockmeier: So long and thanks for all the Geekos!

Joe "Zonker" Brockmeier has announced that he is leaving Novell, and thus his openSUSE community manager position, at the end of the month. "With the openSUSE Conference wrapped up, 11.2 launched, the major projects I've been working on are completed and I feel like this is a good parting point. It wasn't an easy decision, but I had some time to refocus over the holidays and I know that it is time to move on. One of the most important responsibilities any employee has — especially a community manager — is to know when to move on, and not remain in a role just for the sake of having a job."

Comments (none posted)

Wanted: Linux Community Manager

The openSUSE project is looking for a new community manager to replace Joe "Zonker" Brockmeier. "The openSUSE community is more vibrant than ever and we want to sustain the momentum. We are looking for the next great community leader who can help SUSE reach even more people and make an even bigger impact on the world. If you're passionate about Linux, love to work with people around the world, have some ideas about marketing, and think you can make an impact, we want to hear from you!"

Comments (none posted)

Ubuntu family

Ubuntu changes to Yahoo as default search provider

Canonical has announced that, in the upcoming Lucid Lynx release, the default search provider in Firefox will be Yahoo. "I am pursuing this change because Canonical has negotiated a revenue sharing deal with Yahoo! and this revenue will help Canonical to provide developers and resources to continue the open development of Ubuntu and the Ubuntu Platform." This change will affect existing users, who will need to switch back to Google if that's their preference.

Full Story (comments: 41)

Cessation of activities by MOTU Council

There are four members of the MOTU Council whose terms expire at the end of January 2010. There will not be a selection process to replace them at this time. "In light of the ongoing discussions regarding the future of MOTU, it was decided that without clear definition of "MOTU" and "MOTU Council", and the distinct possibility that both would no longer exist in the near future, it was decided that beginning a selection process to replace the four expiring members may be confusing, both for those volunteering to hold the position, and those selecting from the available choices. As a result, MOTU Council will be unable to reach quorum, and must cease activities."

Full Story (comments: none)

Minutes from the Ubuntu Technical Board meeting

Click below for the minutes of the January 26, 2010 meeting of the Ubuntu Technical Board. Topics include Archive reorganization, Kubuntu/UpdatesPolicy, Units Policy, and Check up on community bugs.

Full Story (comments: none)

Other distributions

A look at what's coming in Qimo 2.0

Qimo for Kids is a Ubuntu based distribution aimed at small children. In this article Michael Hall covers the new features coming in version 2.0. "It's been almost a year since Qimo 1.0 was released, and we're hard at work again on the next version of our friendly Linux desktop for kids. We will be using Ubuntu 10.04 as our foundation this time, so our final release is targetted for the end of April, 2010. But in the mean time, here's a look at what's coming..."

Comments (none posted)

New Distributions

Linux distribution Ylmf OS looks just like Windows XP (Neoseeker)

NeoSeeker looks at the first English version of Ylmf OS. "Ylmf OS is built on the popular Ubuntu flavor of Linux. It comes with a slew of open source applications, such as the great Open Office, Pidgin messenging client, Firefox, and many more. For you Linux neophytes out there: just because it looks just like XP doesn't mean you can run all (most) Windows XP applications though."

Comments (none posted)

Distribution Newsletters

Misc Debian developer news (#20)

This issue of miscellaneous developer news covers "+ Notification of failed builds + Integration of experimental, non-free, backports.org, debian-edu and volatile into the official autobuilding infrastructure + Unification of buildd software + Browse WNPP bugs based on debtags + Multiple CSS skins disabled on the PTS"

Full Story (comments: none)

DistroWatch Weekly, Issue 338

The DistroWatch Weekly for January 25, 2010 is out. "Have you ever bought a commercial distribution? While the vast majority of Linux-based operating systems can be had for free, there is a small number of commercial projects that sell their enhanced editions, usually targeting newcomers to the Linux world. Today's feature article takes a look at one such project - Italy's Hymera, a Debian-based distribution with an array of user-friendly features. In the news section, testers report vast improvements in Ubuntu 10.04 boot times, Lubuntu developers release a new alpha build for public testing, Slackware Linux gets a rare but well-deserved media exposure, and an article questions some of the claims made by OpenBSD with regards to security. Also in this issue, Qimo 4 Kids prepares for a launch of a brand new version while the Question and Answer section looks at running Linux on Apple hardware. Finally, distro hoppers rejoice - eight new distributions were submitted to DistroWatch last week alone; see the New Distributions section below. Happy reading!"

Comments (none posted)

Fedora Weekly News 210

The Fedora Weekly News for January 24, 2010 is out. "This issue kicks off with recent announcements from the Fedora Project, including a deadline tomorrow for Fedora 13 features, and links to Fedora events. In our Quality Assurance beat, detailed coverage of the many activities of the QA Team, including discussion and updates around AutoQA, improved freeze policy documentation, a proposed privilege escalation policy, and news of the first drop of Fedora 13 images. In The Art/Design Team beat, updates on Fedora 13 graphics and discussion of the new Firefox 3.6 personas theming. Our issue completes with the Security Advisories beat, bringing us up-to-date on security patches released in the past week for Fedora 12 and 11. Enjoy FWN 210!"

Full Story (comments: none)

The Mint Newsletter - issue 99

This issue of the Mint Newsletter covers the release of Mint 8 Fluxbox RC1 and KDE RC1, and several other topics.

Comments (none posted)

openSUSE Weekly News/107

This issue of the openSUSE Weekly News covers * Wiki Cleanup - Geeko wants you!, * Masim Sugianto: Recover Deleted Files on Linux with Extundelete, * Updated GNOME for openSUSE 11.2, and why it's good, * Carlos Gonçalves: PySide packages for openSUSE, Mandriva and Fedora, * Skype 2.1 beta 2 aka Talking Screens for Linux, and more.

Comments (none posted)

Ubuntu Weekly Newsletter #177

The Ubuntu Weekly Newsletter for January 23, 2010 is out. "In this issue we cover: Developer Membership Board election results, Ubuntu User Days A Big Success, Bugs and hugs, Ubuntu Developer Week: January 25th - January 29th, 2010, Canonical Blog: ISV support for Ubuntu Server Edition widens, January 20th America's Membership Review Board Meeting, Ubuntu LoCo Re-Approval Process, LoCo Stories: the Ubuntu Honduras School Tour, Launchpad 10.1 roll-out 09.00-11.30 27th January 2010, Anonymous Access to the Launchpad Web Service API, Introducing Ubuntu Electronics Remix 9.10, and much, much more!"

Full Story (comments: none)

Distribution meetings

ArchCon2010 registration

Arch Linux has announced ArchCon 2010. "Two prominent community members, Dusty and ralvez have been working hard to bring Arch Linux it's very own conference. ArchCon 2010 will take place in Toronto, Canada's largest city, on July 22 and 23. Registration is now open at http://archcon.archlinux.ca/ and more information can be found on the ArchCon site at http://archlinux.ca/archcon2010/." Earlybird registration ends on February 28th.

Comments (none posted)

Interviews

Question and Answer with Josh Paetzel (Zeep's Blog)

Zeep's Blog features an interview with Josh Paetzel, the Director of IT at iXsystems, the company which supports PC-BSD. "JP: PC-BSD inherits the performance, stability, and security of FreeBSD, along with a well tested set of filesystems, UFS2 and ZFS. It is capable of running a wide variety of Open Source software, such as OpenOffice, Firefox, mplayer, xine. KDE, and more."

Comments (none posted)

Distribution reviews

Google's Chrome OS: Tomorrow's Desktop Today? (IT World)

IT World has a review of Chrome OS. "Sometime in 2010, Google will release Chrome OS, its take on a netbook operating system. It will be far more than just that though. It's an entirely new take on the desktop operating system. While a final version is still months away from release there's already enough of Chrome available that we can begin to see what it's going to look like."

Comments (none posted)

Slackware Linux - Less is more (IT Pro)

IT Pro has a review of Slackware. "What you get from Slackware is a clean system that expects more of the user, at the command line and in the configuration process. There are virtues to this approach. As Patrick Volkerding, the guiding light of Slackware, sees it: "I think the more you try to second guess the user, the more you put up barriers. So we like to keep things uncomplicated as much as possible.""

Comments (none posted)

Page editor: Rebecca Sobol

Development

Numerical computations with Scilab 5.2

January 27, 2010

This article was contributed by Koen Vervloesem

At the end of 2009, the Scilab Consortium released version 5.2.0 of the numerical computation tool Scilab. It consists of a toolbox for doing numerical computations for science and engineering applications. Scilab's underlying programming language has a syntax similar to, and mostly compatible with, the popular proprietary software MATLAB.

Scilab has a source code translator to assist the user with converting code from MATLAB. That's a big convenience, because many engineering students have learned MATLAB at the university, and it's also a de facto standard in industry. A lot of source code written for MATLAB can also be run on Scilab.

Hands on with Scilab

Working with Scilab is rather straightforward. When the application starts, it shows a console window where the user enters commands. Most of these commands are in the form of mathematical expressions with objects like polynomials or matrices, and after entering the command Scilab computes the result of the expression and shows it on the console. The output is in text mode, even numerical expressions with fractions and powers, which is surprisingly easy to read. So it's like a shell in an operating system, but with mathematical expressions instead of operating system commands.

[Scilab subplot]

There are also plotting commands, which open a new graphic window and plot a mathematical function in it. Users can save the resulting plot to reload it later in Scilab, copy the image to the clipboard or export it to one of a couple of bitmap and vector file formats. The image can also be zoomed or rotated in 2D or 3D.

Scilab helps the uninitiated a lot by showing extensive information about all available commands in the Help Browser. Each command has an associated documentation page that is viewable in this browser, with information about the parameters, a description of what the command does and examples that can be entered in the Scilab console. When the user installs an external toolbox, its documentation is also integrated into the Help Browser. Another great way to explore the possibilities of Scilab are the demos. They are subdivided into various categories and users can even take a peek at their source code. So while Scilab isn't exactly easy to learn, users can learn a lot by looking at the demos' source code and the examples in the Help Browser.

Most of the advanced features are split in a large number of "toolboxes" (modules) for specific tasks. Among the possibilities are linear algebra, working with sparse matrices, polynomials and rational functions, interpolation and approximation, number theory, 2D and 3D graphics and animation, signal processing, Fast Fourier Transforms, wavelets, manipulating graphs and networks, statistics, artificial neural networks, econometrics, and so on. There are also interfaces with programming languages and environments like Fortran, Tcl/Tk, C, C++, Java, and LabVIEW. There is also a package that plugs into the proprietary computer algebra system Maple for Scilab code generation, and there is a toolbox that translates Scilab code into standalone C code.

[Scilab Lena Wavelet]

Scilab saved your author several times when writing articles about computer science. For example, once he undertook the daunting task of explaining wavelet transformations and their applications to image processing. Because a picture is worth a thousand words, he thought it would be nice to visualize this. But how? As an engineering student he had an educational license for MATLAB, but those days were gone and paying thousands of dollars for software is not an option for a freelance journalist. After much searching, adapting scripts and experimenting, your author managed to visualize the wavelet transformations with the Scilab Wavelet Toolbox and a Scilab script of thirty lines. That's the power of Scilab: it gives free access to scientific computations that would cost a great deal of money to do using other software.

Download

Prior to version 5, Scilab had a non-free license: although the project gave users access to its source code, the license restricted distribution of modified versions to non-commercial purposes. Beginning with version 5, the developers distribute Scilab under the CeCILL license ("CEA CNRS INRIA Logiciel Libre"), jointly developed by a number of French agencies to comply with both international and French law. CeCILL is not OSI-approved, but it follows the principles of GPL and it is GPL-compatible.

Current releases of mainstream Linux distributions don't have Scilab 5.2 yet in their repositories, so for now users have to download the package from Scilab's web site. They can download the source and try to build Scilab 5.2 themselves, or they can download the binary version for their platform (which includes a lot of the third-party dependencies) and install it. The website distributes x86 and x86_84 versions for Linux and Windows and a dmg installer for Mac OS X 10.5/10.6 (on Intel).

It may take some time before Scilab 5.2 becomes available in distributions' repositories. For example, Fedora is working on it, but there are a lot of incomplete dependencies and several packages for optional functionality are not yet available.

A better user experience

[Scilab atoms]

New features in Scilab 5.2 are mostly focused on a better user experience. For example, while previous releases required the user to install external modules manually, the latest release comes with a management tool called ATOMS (AutomaTic mOdules Management for Scilab). This tool allows the user to browse Scilab or third-party repositories and download and install external modules from a graphical window (although the commands in the Scilab console are still available). It also facilitates updating existing modules and manages dependencies. Essentially, ATOMS functions as a package manager for Scilab modules. It can also automatically load installed modules when Scilab starts.

By default ATOMS lists a fairly limited set of modules. More are listed on the ATOMS Portal, a new web site that hosts external modules and allows developers to upload their own modules. Unfortunately, even the ATOMS Portal lacks a lot of popular modules like the Scilab Image Processing Toolbox and the Scilab Wavelet Toolbox.

Another addition to Scilab's user experience is a new Java-based text editor that integrates into Scilab. Some of the features are syntax coloring, automatic indentation, line numbering, comment/uncomment of blocks, and getting help on a selected line. The new editor replaces the previous one, Scipad, which remains available through ATOMS.

A third new feature is the ability to annotate graphics with MathML and LaTeX text. This is available in all places where text can be set in a graphic, such as the label and title. This makes it possible to include mathematical equations, greek names of variables, matrices and other symbols. There's also a new function prettyprint that can represent a Scilab variable as a LaTex or MathML expression.

Scilab 5.2 also replaces its modeling tool Scicos by Xcos, which is based on Scicos 4.3, has a new JGraphX-based user interface and promises a roadmap that is synchronized with Scilab. Xcos is a dynamic systems modeler and simulator, which can be used for modeling mechanical systems like accelerating vehicles, hydraulic systems like water tanks and electrical systems like amplifiers and logic gates. The release in Scilab 5.2 provides a new block diagrams editor and finally allows the user to edit several diagrams at the same time. Drag and drop from a palette to a diagram and between two diagrams now also works.

Conclusion

The focus on better user experience notwithstanding, Scilab's interface still has some rough edges and peculiarities. For example, the windows have their own close button inside the operating system's window (which also has, in most cases, a close button). The graphs have redraw issues when Compiz is activated. Moreover, error messages are sparse, somewhat hidden, and sometimes in broken English. So it could still use some polishing, but it gets the job done, which is the most important factor. Scilab is a powerful free alternative to pricey commercial tools like MATLAB. Anyone who regularly needs scientific computations or plotting capabilities should take a look at Scilab.

Comments (12 posted)

System Applications

Database Software

PostgreSQL Weekly News

The January 24, 2010 edition of the PostgreSQL Weekly News is online with the latest PostgreSQL DBMS articles and resources.

Full Story (comments: none)

Interoperability

Samba 3.5.0rc2 is available

Version 3.5.0rc2 of Samba has been announced. "This is the second release candidate of Samba 3.5.0. This is *not* intended for production environments and is designed for testing purposes only. Please report any defects via the Samba bug reporting system at https://bugzilla.samba.org/. Plans are to ship the final 3.5.0 release on February 16 if there are no major issues with 3.5.0rc2."

Comments (none posted)

Mail Software

Apache Software Foundation releases SpamAssassin 3.3.0 (The H)

The H covers the release of Spamassassin 3.3.0, the first major update since May of 2007. "In addition to the usual bug fixes, the latest release features major changes in how SpamAssassin rules, the patterns that help identify spam, are updated. From version 3.3.0, rules have been separated from SpamAssassin's core. Previously optional in version 3.2.x, rules are now downloaded over a network using the built-in automatic software update tool, known as "sa-update". Alternatively, users can also install rule updates from a tar archive using sa-update. Other notable changes include improved IPv6 support and error handling, improvements to the DKIM plugin and support for Distributed Checksum Clearinghouses (DCC) reputations."

Comments (6 posted)

Telecom

Kamailio (OpenSER) 3.0.0 released

Version 3.0.0 of Kamailio has been announced. "after ten months since previous major release 1.5.0, I am glad to announce that Kamailio (OpenSER) v3.0.0 is out. It is a special release, being the first based on SIP Router project. Along with new things developed during the past months, you can blend features and modules provided by previous versions of Kamailio (OpenSER) and SIP Express Router (SER) in same configuration file."

Full Story (comments: none)

Web Site Development

Apache Lenya 2.0.3 released

Version 2.0.3 of Apache Lenya has been announced, it includes some new features and bug fixes. "Apache Lenya is an Open Source Java/XML Content Management System and comes with revision control, site management, scheduling, search, WYSIWYG editors, and workflow."

Full Story (comments: none)

Midgard2 9.09.2 released

Version 9.09.2 of the Midgard2 web framework has been announced. "Midgard2 9.09 is targeted at web framework and desktop application developers. It provides a comprehensive set of content repository APIs that can be used to build replicated information applications that share their information using a common storage layer and replication tools. In this release we provide Content Repository API bindings for the following programming languages: C, Python, PHP and Objective-C. D-Bus signals are used to inform different Midgard2 applications about things happening in the repository, enabling for example a PHP website and a Python background process to communicate with each other."

Full Story (comments: none)

Quixote 2.7b2 released

Version 2.7b2 of Quixote has been announced. "Quixote is a framework for writing Web-based applications using Python. Its goals are flexibility and high-performance, in that order. A new beta release of Quixote 2 available. This version fixes the PTL import hooks to work with Python 2.6."

Full Story (comments: none)

Miscellaneous

Amazon to spin Kindle SDK (LinuxDevices)

LinuxDevices takes a look at a software development kit for the Kindle e-book readers. "Starting next month, participants in the limited beta will be able to download the (presumably free) Kindle Development Kit, which will let them access support, test content on the Kindle e-reader, and then submit finished content, says Amazon. The Kindle Development Kit will include a variety of sample code, documentation, interfaces, and tools. The SDK will also offer the Kindle Simulator, which helps developers build and test their content by simulating the 6-inch Kindle (pictured at left) and 9.7-inch Kindle DX on Mac, PC, and Linux desktops, says Amazon."

Comments (none posted)

Desktop Applications

Audio Applications

Ardour 2.8.5 and 2.8.6 released

Two new versions of the Ardour multi-track audio workstation have been announced recently. Version 2.8.5: "Although I had hoped that the next release would be an alpha version of 3.0, we have accumulated too many critical bug fixes and a few nice to have features to let 2.8.5 wait any longer." Version 2.8.6: "There is only one one difference to 2.8.5 - VST-enabled builds for Linux are possible. There are no functional changes, and absolutely no changes for OS X, so I am leaving the current version for OS X at 2.8.5. The release was done mostly for the sake of those Linux distributions which provide a VST enabled build and don't like to work directly from SVN. "

Comments (none posted)

jack_capture 0.9.40 released

Version 0.9.40 of jack_capture has been announced. "Most important new features since 0.9.36 * Direct support for mp3 using liblame. * Console cleanup. Terminal should not be messy when quitting jack_capture. * Better buffering schemes. * Less used memory."

Full Story (comments: none)

Calendar Software

New release of Mozilla Lightning and SOGo

Inverse has announced new releases of Mozilla Lightning and SOGo. "SOGo provides a rich AJAX-based Web interface and supports multiple native clients through the use of standard protocols such as CalDAV, CardDAV and GroupDAV. It features a very tight integration with Mozilla Thunderbird and Lightning and enable mobile devices synchronization through the use of the Funambol middleware. Version 1.2.0 provides new features such as Apple iCal 4 delegation support, multi-domains support, brand new Web interface and much more. Moreover, Inverse releases Lightning "Inverse Edition" v0.9.8. This is a maintenance release of Mozilla Lightning based on our 0.9 release which focuses on stability and includes many bug fixes, several small enhancements and some new features of the upcoming Mozilla Lightning 1.0 extension."

Full Story (comments: none)

Data Visualization

Veusz 1.6 released

Version 1.6 of Veusz has been announced, it adds new functionality and bug fixes. "Veusz is a Qt4 based scientific plotting package. It is written in Python, using PyQt4 for display and user-interfaces, and numpy for handling the numeric data. Veusz is designed to produce publication-ready Postscript/PDF/SVG output. The user interface aims to be simple, consistent and powerful."

Full Story (comments: none)

Desktop Environments

Stormy Peters: What should the GNOME Foundation accomplish in 2010?

Stormy Peters looks at the GNOME Foundation's goals for 2010. "If you use GNOME, you should let us know what you think the Foundation should accomplish in 2010!"

Comments (35 posted)

GNOME Software Announcements

The following new GNOME software has been announced this week: You can find more new GNOME software releases at gnomefiles.org.

Comments (none posted)

KDE Software Compilation 4.3.5 released

Version 4.3.5 of the KDE Software Compilation has been announced. "KDE has released a new version of the KDE Software Compilation (KDE SC). This month's edition of KDE SC is a bugfix and translation update to KDE SC 4.3. KDE SC 4.3.5 is a recommended upgrade for everyone running KDE SC 4.3.4 or earlier versions. As the release only contains bugfixes and translation updates, it will be a safe and pleasant update for everyone."

Full Story (comments: none)

KDE SC 4.4 RC2 released

Version 4.4 RC2 of the KDE Software Compilation has been announced. "KDE SC 4.4 Release Candidate 2 provides a testing base for identifying bugs in the upcoming KDE Software Compilation 4.4, with its components the KDE Plasma Workspaces, the Applications powered by KDE, and the KDE Development Platform."

Full Story (comments: none)

Camp KDE Day Three Technical Talks Summaries (KDE.News)

KDE.News covers day three at Camp KDE. "First talk of the day was by KDE PIM developer Stephen Kelly. Akonadi is a generic interface to access your notes, email, and other PIM data. Stephen walked us through the model view concept, the features of the Akonadi model-view, some challenges the developers faced during development and how the rest of the KDE community could take advantage of Akonadi."

Comments (none posted)

KDE Gears Up to a Free Cloud (KDE.News)

KDE.News has a look at the ownCloud initiative coming out of the Camp KDE discussions. "If and when a serious number of providers join this effort or support the interface, nobody will have to join a myriad of different social networks just because he or she has friends on all these incompatible, separate clouds - they will all be able to connect. If users are unhappy with a provider, they will be able to move on to another provider without losing all of the information and connections they have created with that provider, opening up the market and creating opportunities for new companies and innovative services. As an added benefit, users concerned about their online security and privacy can stay in full control of their own data by running their own cloud server." More information can be found in this slide deck [PDF].

Comments (4 posted)

KDE Software Announcements

The following new KDE software has been announced this week: You can find more new KDE software releases at kde-apps.org.

Comments (none posted)

Lxdm is now themeable

New theming support for the LXDE lightweight desktop environment has been has been announced. "LXDM, the display manager of LXDE, now has full theming support based on gtkrc styles + GtkBuilder xml UI definition. No technology outside GTK+ itself is needed and no additional library is required for this new feature."

Comments (none posted)

Xorg Software Announcements

The following new Xorg software has been announced this week: More information can be found on the X.Org Foundation wiki.

Comments (none posted)

Geographical Software

Online mapping helps Haiti relief efforts (PRI's The World)

OpenStreetMap (OSM) played a prominent role in assisting Haiti relief efforts by getting historical map data into OSM and making it available to relief workers. "Crisis response teams and aid groups are now downloading OSM's Haiti map onto their GPS units. There's even a specially designed iphone app for OSM's Haiti map. Another group using OSM's Haiti map is Ushahidi. That's a site that collects web, email and text message reports from Haiti. Those reports are then embedded in an interactive version of OSM's map on Ushahidi's website." Seen on Michael Tiemann's blog.

Comments (none posted)

GUI Packages

PyQt 4.7 released

Version 4.7 of PyQt has been announced. "PyQt is a comprehensive set of bindings for the Qt application and UI framework from Nokia. It supports the same platforms as Qt (Windows, Linux and MacOS/X). The highlights of this release include: - full support for Qt v4.6.1 including the new animation and state machine frameworks, gesture and multi-touch support, and advanced graphics effects (blurring, colourising, drop shadows) - all callables have docstrings that describe the Python signatures of all available overloads - keyword arguments are supported for all optional arguments."

Full Story (comments: none)

SIP 4.10 released

Version 4.10 of SIP has been announced. "SIP is a tool for generating Python modules that wrap C or C++ libraries. It is similar to SWIG. It is used to generate PyQt and PyKDE. This release adds support for keyword arguments and docstrings. Docstrings may be either explictly specified or automatically generated."

Full Story (comments: none)

Urwid 0.9.9.1 released

Version 0.9.9.1 of Urwid, a console-based user interface library, has been announced. "This maintenance release fixes a number of bugs including a backwards incompatibility introduced in the last release and a poor ListBox snapping behaviour."

Full Story (comments: none)

Interoperability

Wine 1.1.37 announced

Version 1.1.37 of Wine has been announced. Changes include: "- A number of fixes in AVI file support. - Several MSXML improvements. - A few MSI fixes. - Various bug fixes."

Comments (none posted)

Medical Applications

GNUmed EMR client 0.6.0 released

Version 0.6.0 of GNUmed EMR has been announced. "The GNUmed project builds free, liberated open source Electronic Medical Record software to assist and improve longitudinal care. It is made available at no charge and is capable of running on GNU/Linux, Windows and Mac OS X. It is developed by a handful of medical doctors and programmers from all over the world. It can be useful to anyone documenting the health of patients including, but not limited to, doctors, physical therapists, occupational therapists ... The big improvements are - LaTeX based letter writing - medication handling "

Full Story (comments: none)

Valdes and Astronaut putting VA VistA in the cloud (ZDNet)

ZDNet reports on the availability of the VA VistA medical record system in a cloud environment. "A company launched by the founder of Linux Medical News is making the VA VistA software available in the cloud for the first time. Ignacio Valdes is a psychiatrist based in Houston,. He calls his company Astronaut Vista, so naturally the name for the enabling software is Astronaut Shuttle. Shuttle was developed by open source health IT advocate Fred Trotter, who offered details on his blog last week. Trotter admitted that VistA has been difficult to get working. Having it available as Software as a Service (SaaS), in the Amazon cloud, eliminates that problem."

Comments (none posted)

Music Applications

rakarrack 0.4.2 released

Version 0.4.2 of rakarrack has been announced. "Rakarrack is a richly featured multi-effects processor emulating a guitar effects pedalboard. Effects include compressor, noise gate, graphic equalizer, parametric equalizer, flanger, chorus, echo with reverse playback, musical delay, reverb, digital phaser, analogic phaser, wah-wah, alien-wah, harmonizer, and three flexible distortion modules including sub-octave modulation and dirty octave up."

Full Story (comments: none)

Office Applications

Pyspread 0.0.14 released

Version 0.0.14 of Pyspread has been announced, it includes some new features and bug fixes. "Pyspread is a cross-platform Python spreadsheet application. It is based on and written in the programming language Python. Instead of spreadsheet formulas, Python expressions are entered into the spreadsheet cells. Each expression returns a Python object that can be accessed from other cells. These objects can represent anything including lists or matrices."

Full Story (comments: none)

Web Browsers

Firefox 3.6 is available

Version 3.6 of Firefox has been announced. "For more details, please see the announcement on Mozilla Developer News: http://developer.mozilla.org/devnews/index.php/2010/01/21..."

Full Story (comments: none)

Firefox 3.6 brings joy to Web devs, not just users (ars technica)

Ars technica reviews the Firefox 3.6 release. "Mozilla says that users don't always understand the role that plug-ins play in the Web experience and might not even realize that they have plug-ins installed. This is a major impediment to giving users the ability to protect their own security. The PluginCheck system is a new feature that Mozilla has introduced to address some of the problems caused by faulty browser plug-ins. It gives the browser the ability to make the user aware when a vulnerable plug-in is detected."

Comments (3 posted)

Blizzard: HTML5 video and H.264 - what history tells us and why we're standing with the web

On his blog, Christopher Blizzard looks at HTML5 and the patent-encumbered H.264 video codec. Blizzard draws a parallel between the GIF patent situation 5+ years ago and the current situation with H.264. "Remember, this is still very early in H.264's history so the licensing is very friendly, just like it used to be for MP3. The companies who own the IP in these large patent pools aren't in this for the fun of it — this is what they do. They patent and they enforce and then enjoy the royalties. If they are in a position to charge more, they will. We can expect that if we allow H.264 to become a fundamental web technology that we'll see license requirements get more onerous and more expensive over time, with little recourse."

Comments (221 posted)

Languages and Tools

C

GCC 4.4.3 released

Version 4.4.3 of the GNU Compiler Collection has been announced. "GCC 4.4.3 is a bug-fix release containing fixes for regressions and serious bugs in GCC 4.4.2."

Full Story (comments: none)

GCC 4.4.3 Status Report

The January 21, 2010 edition of the GCC 4.4.3 Status Report has been published. "GCC 4.4.3 release tarballs have been uploaded, the 4.4 branch is again open for commits under the usual release branch rules."

Full Story (comments: none)

GCC 4.5 Status Report

The January 21, 2010 edition of the GCC 4.5 Status Report has been published. "The trunk is still in regression and documentation fixes only mode, we still have several P1 regressions that need to be fixed before branching. There will be a release candidate made available when there are no remaining P1 regressions on the trunk."

Full Story (comments: none)

Caml

Caml Weekly News

The January 26, 2010 edition of the Caml Weekly News is out with new articles about the Caml language.

Full Story (comments: none)

Java

IcedTea6 1.7 released

Version 1.7 of IcedTea6 has been announced, it includes numerous enhancements. "The IcedTea project provides a harness to build the source code from OpenJDK6 using Free Software build tools. It also includes the only Free Java plugin and Web Start implementation, and support for additional architectures over and above x86, x86_64 and SPARC via the Zero assembler port."

Full Story (comments: none)

Perl

Parrot 2.0.0 "Inevitable" released

Version 2.0.0 of Parrot has been announced. "On behalf of the Parrot team, I'm proud to announce Parrot 2.0.0 "Inevitable." Parrot is a virtual machine aimed at running all dynamic languages."

Full Story (comments: none)

Python

Python 2.5.5 release candidate 2 is out

Release candidate 2 of Python 2.5.5 has been announced. "This is a source-only release that only includes security fixes. The last full bug-fix release of Python 2.5 was Python 2.5.4. Users are encouraged to upgrade to the latest release of Python 2.6 (which is 2.6.4 at this point). This releases fixes issues with the logging and tarfile modules, and with thread-local variables. Since the release candidate 1, additional bugs have been fixed in the expat module."

Full Story (comments: none)

ReportLab PDF Toolkit 2.4 released

Version 2.4 of ReportLab PDF Toolkit has been announced. "The ReportLab Toolkit is a library for programatically creating documents in PDF format. It's free, open-source software written in Python, and released under a BSD type license."

Full Story (comments: none)

Tcl/Tk

Tcl-URL! - weekly Tcl news and links

The January 22, 2010 edition of the Tcl-URL! is online with new Tcl/Tk articles and resources.

Full Story (comments: none)

Cross Compilers

simavr, an AVR simulator for Linux

The simavr project was recently launched. "simavr is a new AVR simulator for linux, or any platform that uses avr-gcc. It uses avr-gcc own register definition to simplify creating new targets for supported AVR devices. The core was made to be small and compact, and hackable so allow quick prototyping of an AVR project. The AVR core works more or less perfectly now."

Comments (none posted)

Test Suites

Linux Desktop Testing Project (LDTP) 2.0.2 released

Version 2.0.2 of LDTP has been announced. "Changes in this release: Fixed ldtp binary name and now it spits out the version info Updated README and AUTHORS file Fixed OpenSolaris bug reported by Qinghua Cheng".

Full Story (comments: none)

Version Control

Git 1.6.6.1 released

Version 1.6.6.1 of the Git distributed version control system has been announced, it includes numerous bug fixes and documentation updates.

Full Story (comments: none)

hgview 1.2.0 released

Version 1.2.0 of hgview has been announced. "hgview is a Mercurial extension for graphically navigating through the revision history of hg - just like hgk or hgtk, but using PyQT. More detailed release notes can be found here: http://www.logilab.org/blogentry/19912".

Full Story (comments: none)

Miscellaneous

GCC to merge Go support

The GCC project has announced that the "gccgo" front end (for Google's new "Go" language) has been accepted for the mainline. "The GCC Release Managers will decide the details about the timing of the merge and inclusion in GCC 4.5 or later."

Full Story (comments: 35)

Page editor: Forrest Cook

Announcements

Non-Commercial announcements

Donate your unused OLPC XO to Haiti

The OLPC for Haiti project is stepping up their efforts in the wake of the recent Haitian earthquake. "If you have an unused XO laptop, you can give it to a displaced student in Haiti. OLPC for Haiti will be sending an extra shipment of XOs to Haiti this year, and the 2010 OLPCorps field volunteers in Haiti will help distribute them as part of the rebuilding around Port-au-Prince." (Thanks to Joel Young).

Comments (none posted)

Commercial announcements

Red Hat launches opensource.com

Red Hat has created a new web site, opensource.com, to explore applying open source principles to other fields such as law, education, government, life, and so forth. The site runs on Amazon's elastic computing cloud (EC2) using RHEL, MySQL, and Drupal. "The open source way is more than a development model; it defines the characteristics of a culture. Red Hat and other open source thought leaders want to show you where open source is headed next. Tell you how to get involved. Help you apply it to your life and the world around you."

Comments (18 posted)

State of the Union at Red Hat

Jim Whitehurst, President and CEO of Red Hat, has posted a "State of the Union" address. "I'm kicking off my third year at Red Hat this month and would like to take a step back as we move into 2010 to reflect on the past year. In keeping with the U.S. presidential tradition of delivering a "State of the Union" address each January, I'd like to maintain a similar tradition at Red Hat and highlight some of our milestones from 2009."

Comments (none posted)

Legal Announcements

EU clears Oracle's proposed acquisition of Sun Microsystems

The European Commission has cleared Oracle's purchase of Sun. "The Commission's investigation showed that another open source database, PostgreSQL, is considered by many database users to be a credible alternative to MySQL and could be expected to replace to some extent the competitive force currently exerted by MySQL on the database market. In addition, the Commission found that 'forks' (branches of the MySQL code base), which are legally possible given MySQL's open source nature, might also develop in future to exercise a competitive constraint on Oracle in a sufficient and timely manner." Meanwhile, opponents of Oracle's purchase, including MySQL founder Michael "Monty" Widenius, have turned to Russia and China in an effort to block it.

Comments (17 posted)

Microsoft Sues TiVo - The Why of It (Groklaw)

Groklaw covers the latest Microsoft patent suit. "Microsoft filed a patent infringement suit against TiVo late yesterday. Microsoft says it's really about defending AT&T, which is one of the companies TiVo has already sued over patents. TIVO says it is too. From the San Jose Business Journal: The action is seen as being related to a lawsuit that Alviso-based TiVo filed against AT&T Inc., claiming the company's U-Verse TV service illegally uses its "time-warping" technology in its digital video recorders."

Comments (none posted)

Articles of interest

London Stock Exchange begins migration to Linux-based trading platform (ComputerworldUK)

ComputerworldUK reports on the London Stock Exchange's migration to Linux. "The exchange is gearing up for one of its most crucial years yet for technological change. At the end of the 2010, the Linux-based MillenniumIT trading platform, which the LSE gained by acquiring the Sri Lankan company for £18 million in September, will be switched on. It will replace the outgoing TradElect platform, based on Microsoft .Net architecture and upgraded by Accenture only two years ago at a cost of £40 million."

Comments (31 posted)

Misa Digital Guitar makes your Rock Band Peripherals feel inadequate (PCWorld)

PCWorld takes a look at the Linux-based Misa Digital Guitar. "The first thing that stands out about the Misa guitar is that the traditional pickup setup that you’d expect to find in the center of the guitar is replaced by an 8.4-inch 800-by-600-pixel resolution LCD touchpad. This is somewhat similar to a guitar that MUSE lead vocalist and guitarist Matthew Bellamy uses, except that on the Misa you strike the pad to hit the notes instead of strings. The touchpad is set up on an x/y coordinate pair where you will assign your desired effects."

Comments (8 posted)

Sun's Schwartz finished under Ellison? (The Register)

The Register reports that Sun CEO Jonathan Schwartz is thinking of quitting Sun Microsystems. "News of the exit comes as Oracle Ellison and team, along with some of Sun's executives, are scheduled to announce their strategy for Oracle and Sun products on Wednesday. The unveiling comes after European-Union regulators finally decided they were satisfied with the industry's largest database company owning MySQL."

Comments (4 posted)

Resources

Amazon Announces Kindle Development Kit

Amazon has announced a beta release of its Kindle (e-book) Development Kit. "Starting next month, participants in the limited beta will be able to download the Kindle Development Kit, access developer support, test content on Kindle, and submit finished content. Those wait-listed will be invited to participate as space becomes available. The Kindle Development Kit includes sample code, documentation, and the Kindle Simulator, which helps developers build and test their content by simulating the 6-inch Kindle and 9.7-inch Kindle DX on Mac, PC, and Linux desktops."

Comments (none posted)

Novell Delivers First Integrated Toolkit for Building, Testing and Managing Software Appliances

Novell has announced the availability SUSE Appliance Toolkit. "With the availability of the SUSE Appliance Toolkit, Novell now delivers the industry's most complete and integrated solution for building, testing, updating and configuring software appliances across physical, virtual and cloud environments. The Toolkit features an onsite version of Novell's innovative appliance-building solution SUSE Studio and new management tools that enable ISVs and enterprises to reduce software development time, installation cycles and maintenance costs."

Comments (none posted)

Ph.D. dissertation: Low-Impact Operating System Tracing

Mathieu Desnoyers has posted his Ph.D. dissertation as a 233-page PDF file. "In this thesis, we propose the LTTng (Linux Trace Toolkit next generation) tracer as an answer to the industry and open source community tracing needs. The low-intrusiveness of the tracer is a key aspect to its usefulness, because we need to be able to reproduce, under tracing, problems occurring in normal conditions. In some cases, users leave tracers active at all times in production, which makes the tracer overhead definitely critical."

Full Story (comments: 4)

Contests and Awards

FSFE honoured with Theodor Heuss Medal

The FSFE has received the Theodor Heuss Medal. "The Free Software Foundation Europe (FSFE) receives this year's Theodor Heuss Medal for its extraordinary work for equitable participation in the information society. Since 2001 FSFE has been committed to the freedom to use, investigate, modify and redistribute software in all parts of society and politics. Theodor Heuss Foundation states: "FSFE as a forward thinking organisation contributes to the development and establishment of rules for good global governance.""

Full Story (comments: none)

Education and Certification

Linux Foundation Launches Free Training Webinar Series

The Linux Foundation has launched a new webinar series. "The webinar series will feature Linux Foundation technical advisory board (TAB) members and other community developers."

Comments (none posted)

Calls for Presentations

GUADEC 2010 call for papers

A call for papers has gone out for GUADEC 2010, submissions are due by March 20. "GUADEC (pronounced GWAH-DECK) is an acronym for the GNOME Users' And Developers' European Conference. Held annually in cities around Europe, GUADEC is the largest get-together of GNOME users, developers, foundation leaders, individuals, governments and businesses in the world. Gnome is the Free and open source software stack that drives the user interface of many Linux-based devices, from smartphones to your home PC. This year's GUADEC in The Hague, the Netherlands, deals with several interesting themes."

Full Story (comments: none)

OSCON 2010: Call for Proposals

A call for proposals has gone out for OSCON 2010. The event takes place on July 19-23 in Portland, OR, submissions are due by February 1. "If you have winning techniques, favorite lifesavers, war stories, productivity tips, or other ideas to share, we want to hear from you. We're especially on the look-out for ways to do more with less, design and usability best practices, mobile device innovations, cloud computing, parallelization, open standards and data, open source in government, business models, and beyond."

Full Story (comments: none)

Upcoming Events

c5t sprint announced

The c5t sprint will be held in Dallas, TX on January 31. "About c5t: "The CMS for simple minds" -- c5t bridges mongodb, mako, and TG to bring forth a blazing-fast, easy to use, easy to modify way of storing documents and content. Yes, a CMS can be fun again!"

Full Story (comments: none)

Agenda Posted for Red Hat's 2nd Open Source Cloud Computing Forum

Red Hat has announced the agenda for the 2nd Open Source Cloud Computing Forum. "On February 10, Red Hat will present its 2nd Open Source Cloud Computing Forum, a day-long virtual forum hosted by Red Hat CTO Brian Stevens. Similar to our first forum, held in July 2009, the virtual event will feature a dozen half-hour, high-impact technical presentations that cover recent developments in open source cloud computing. The presentations will provide attendees with a view of the large scope of development and deployment work that is underway today, including a look into usage scenarios. As before, we hope that the forum will act as a catalyst for open source communities to work together, grow and encourage participation in the development of open source cloud computing."

Comments (none posted)

EFF Experts to speak at FTC Privacy Roundtable

EFF experts will speak at the upcoming FTC Privacy Roundtable in Berkeley, CA. "On Thursday, January 28, the Federal Trade Commission (FTC) is hosting a day-long public roundtable in Berkeley, California, exploring the privacy challenges posted by new developments in technology. Three experts from the Electronic Frontier Foundation (EFF) are taking part."

Full Story (comments: none)

Another set of FOSDEM interviews

The FOSDEM conference has posted four more interviews with speakers scheduled to be at the upcoming event; the subjects this time around are David Fetter, Philip Tellis, Bernard Li, and Andrew Lewman. "The vast majority of people that tell us they use Tor are regular people. Some use it to circumvent their company firewall to get to GMail to check their calendar to see when they need to pick up their kid from soccer practice. Others use it because their country blocks access to their favorite news or comic website. Some people are worried about what ad networks may know about their browsing habits, and others about what their ISP or their favorite coffee shop owner knows about them."

Comments (none posted)

Global Ignite Week reaches over 70 cities

O'Reilly has announced the Global Ignite Week. "The first annual Global Ignite Week, coming March 1-5, 2010, is gaining steam. At least 12,000 knowledge-seekers around the planet will be attending Ignite events in cities spanning six continents. Driven by the desire to share their passions and interests, volunteers are organizing Ignites in cities including Cape Town, Warsaw, Casablanca, Anchorage, Sao Paulo, New York City, Seattle, Sydney, and Bangalore. While the event originally was slated to extend across four nights, it's been expanded to five to accommodate all of the cities that want to participate."

Full Story (comments: none)

Python Ireland Unconference announced

The Python Ireland Unconference will be held on Feb 6, 2010 at the UCD School of Computer Science and Informatics. "Python Ireland is holding its first unconference on Saturday 6th February. What is an unconference I hear you ask? An unconference is an anti-conference, it takes the most interesting bits of conferences (the hallway chat) and turns that into the entire conference. You turn up with whatever you want to talk about (or ask) and everyone there agrees the schedule. Then whatever happens after that is the unconference."

Full Story (comments: none)

SCALE Adds Talks, Publishes Schedule

The schedule for the Southern California Linux Expo (SCALE) 8x has been published. The conference runs February 20-21 in Los Angeles, CA, but there are also specialty sessions on Friday the 19th including "Women in open source" and "Open source software in education". In addition, there is a new session for Friday night: "Something new this year will be the 'UpSCALE' talks Friday night - SCALE's version of the O'Reilly Media 'Ignite' talks. Ignite is a style of presentation in which participants are given five minutes to speak on a subject, accompanied by 20 slides. Each slide is displayed for 15 seconds, and slides are automatically advanced. If you thrive on the pressure and excitement of a fast-paced presentation and have an exciting idea that you can share with the SCALE audience in 5 minutes or less then an UpSCALE talk may be perfect for you!"

Full Story (comments: none)

Thailand MiniDebCamp 2010

The Thailand MiniDebCamp 2010 has been announced. "As a follow-up to Taiwan Mini-DebConf 2009 in Taipei, we will be arranging a mini-DebCamp in Khon Kaen, Thailand, during March 13-19, 2010".

Full Story (comments: none)

Events: February 4, 2010 to April 5, 2010

The following event listing is taken from the LWN.net Calendar.

Date(s)EventLocation
February 5
February 7
Frozen Perl 2010 Minneapolis, MN, USA
February 6 Super Happy Dev Castle #0 Belfast, N. Ireland, United Kingdom
February 6
February 7
Free and Open Source Developers' European Meeting Brussels, Belgium
February 10 Red Hat Cloud Computing Forum Online, Online
February 11
February 13
Bay Area Haskell Hackathon Mountain View, USA
February 15
February 18
ARES 2010 Conference Krakow, Poland
February 17
February 25
PyCon 2010 Atlanta, GA, USA
February 19
February 20
GNUnify Pune, India
February 19
February 21
SCALE 8x - 2010 Southern California Linux Expo Los Angeles, USA
February 20
February 21
FOSSTER '10 Amritapuri, India
February 22
February 24
O'Reilly Tools of Change for Publishing New York, NY, USA
February 27
February 28
The Debian/GNOME bug weekend Online, Internet
March 1
March 5
Global Ignite week Online, Online
March 2
March 4
djangoski Whistler, Canada
March 2
March 5
FOSSGIS 2010 Osnabrück, Germany
March 2
March 6
CeBIT Open Source Hannover, Germany
March 5
March 6
Open Source Days 2010 Copenhagen, Denmark
March 7
March 10
Bossa Conference 2010 Recife, Brazil
March 13
March 19
DebCamp in Thailand Khon Kaen, Thailand
March 15
March 18
Cloud Connect 2010 Santa Clara, CA, USA
March 16
March 18
Salon Linux 2010 Paris, France
March 17
March 18
Commons, Users, Service Providers Hannover, Germany
March 19
March 20
Flourish 2010 Open Source Conference Chicago, IL, USA
March 19
March 21
Panama MiniDebConf 2010 Panama City, Panama
March 19
March 21
Libre Planet 2010 Cambridge, MA, USA
March 22 OpenClinica Global Conference 2010 Bethesda, MD, USA
March 22
March 26
CanSecWest Vancouver 2010 Vancouver, BC, Canada
March 23
March 25
UKUUG Spring 2010 Conference Manchester, UK
March 25
March 28
PostgreSQL Conference East 2010 Philadelphia, PA, USA
March 26
March 28
Ubuntu Global Jam Online, World
March 30
April 1
Where 2.0 Conference San Jose, CA, USA

If your event does not appear here, please tell us about it.

Page editor: Forrest Cook

Copyright © 2010, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds