Development
Using Irssi to communicate within free software projects
Many developers of Free Software projects discuss and coordinate issues of their projects via Internet Relay Chat (IRC). Intelligent tools like Irssi help maintain sanity during the conversation.
Due to the nature of Free Software projects, unorthodox means of communication are needed. For many projects it is not possible for a developer to just walk into the next office and discuss matters. Developers are often spread over the entire globe like grains of sand.
Communication via Mailing Lists
While the official communication channels often refer to public mailing lists that are archived on the web, members of many projects also enjoy real-time chats as well. Both means share their unique set of advantages and complement each other.
One advantage of mailing lists is their asynchronous nature, which means that there's no problem for Europeans, North Americans and Japanese to discuss the same topic, no matter in which timezone each member lives. Since there is no immediate need for members of a discussion to be awake during the same time it will often last a few days at least.
Another reason for preferring public mailing lists as main communication channel is the archiving function. The discussion and its outcome are automatically archived on the Internet. They can be re-read later and referred to. The archive also demonstrates development progress and documents design decisions and their origin.
It helps interested people understand how the project evolves and gives users many ideas when problem solutions are discussed. Thanks to a large number of commonly used search engines, such discussions are indexed quickly and are found by using proper search keywords.
Real-time Chat Systems
Even though mailing lists have advantages, chat systems are quite useful as well. If you want to check out something quickly with other developers, opening an online chat and talking to those present is a lot faster than waiting for mailing list responses. It's like opening the next office door and asking your colleague, except that they might live thousands of kilometers away.
A real-time chat is similar to a small chat in the office. Even though the general topic may be work, from time to time there will also be a personal component, especially when its members have become acquainted with each other. This also helps bonding developers to a healthier community.
IRC Networks
Several networks provide Internet Relay Chat (IRC). In the early days of Linux development, a new network was quickly established as the Linux network. In recent times, many projects run their main IRC channels on either Freenode or OFTC. Both networks have been founded to provide services for Free Software projects in particular, and even buddy up these days.
Many developers stay logged in during the entire work day even though they may be working on jobs other than their favorite open-source project. This way, they stay in touch with their colleagues and can seek help from like-minded people for their other job when needed.
Several IRC clients are available, some provide a graphical interface, some are text-based. However, many developers prefer one client: Irssi. It is a terminal-based client that can be run under the X window system or on a text-based console.
Irssi Windows and Scripts
One important feature of Irssi is that unlike the older client ircII, every channel (i.e. chat room) and every conversation is virtually moved into its own window. Conversations don't clutter the main screen and it becomes easier to keep track of different conversations at the same time. This feature enables asynchronous use as well, since you don't lose the context when your colleague responds on the following day.
When activity is recognized in a channel, its window number is highlighted in the status line so that you notice ongoing conversations. Windows can be rearranged with the /window move n command so that the most important ones get lower numbers. It is possible to jump directly to a window with Alt-[1..0] (and Alt-q ... Alt-o for windows 11 to 19).
Another advantage Irssi provides over many other clients is the Perl interface that is used to improve the client and adapt it to a user's special needs. It is possible to load and unload scripts manually with the /load command. Scripts are automatically loaded during startup when they are copied or linked to in the directory ~/.irssi/scripts/autorun.
Many user-contributed scripts for Irssi are available on the web::irssi::scripts page. The Debian distribution also provides a large number of scripts in the irssi-scripts package.
Long Topic Names
A special feature of the IRC networks mentioned above is support for
topic names that are longer than 80 characters. The topic for a channel
usually contains a short description of what is going on in the channel,
i.e. the scope of the channel it is associated with. Irssi displays
this on the top of the window. The information can also be displayed
with the /topic and /list commands.
Longer channel topics have been implemented for a reason. They are no longer used only to carry a description of the channel's scope, they also serve as a pin board onto which the most recent and important news or problems are announced.
For developers it may be important to read the topic. However, a problem arises when somebody changes the topic, there is no easy way to recognize the difference when it is more than 300 characters long and you don't have the old version stored somewhere. Note that the client only displays the first line of the topic and this depends on the width of your terminal.
For text files the differences are easily visualized, so why not for long topic lines as well? The solution is the script topic-diff.pl. When it is loaded each topic change is accompanied with a list of items that have been added or removed.
The script has been developed with a focus on development channels where the pipe symbol is treated as a delimiter of topic components. It will split the topic into components and report changes in them. If a component has only been moved within the topic, no difference is reported, of course.
By using a combination of mailing lists and realtime chat systems, it has become quite easy to stay in touch with project colleagues and watch development and discussions without losing sanity.
System Applications
Database Software
PostgreSQL Weekly News
The June 24, 2007 edition of the PostgreSQL Weekly News is online with the latest PostgreSQL DBMS articles and resources.pgsnmpd 1.0 beta 1 announced
Version 1.0 beta 1 of pgsnmpd has been announced. Pgsnmpd is: "the SNMP(Simple Network Management Protocol) agent for PostgreSQL. It reports the health state of PostgreSQL with original MIB (Management Information Base)."
Interoperability
Samba 3.0.25b available
Version 3.0.25b of Samba has been released. "This is the third production release of the Samba 3.0.25 code base and is the version that servers should be run for for all current bug fixes."
Networking Tools
Release of iptables 1.3.8
Version 1.3.8 of iptables has been announced. "This release contains lots of accumulated bugfixes, manpage updates, and support for IPv6-MH, TCPMSS and port randomization for NAT."
Printing
pkpgcounter 2.17 released
Version 2.17 of pkpgcounter has been announced, it features several bug fixes. "pkpgcounter is a generic Page Description Language parser which can either count the number of pages or compute the percent of ink coverage needed to print various types of documents."
Security
privbind 1.1 released
Version 1.1 of privbind has been announced. "Privbind is a small tool allowing secure running of unprivileged programs, but allowing them to bind to privileged (<1024) TCP/UDP ports. Privbind has a secure design, with no SUID executables and no daemons."
Desktop Applications
Audio Applications
Amarok 1.4.6 released
Version 1.4.6 of the Amarok music player is out with an assortment of new features and bug fixes.
Business Applications
The first release of Bots
The first release of Bots has been announced. "Bots EDI-connects your company with your trading partners. EDI is the exchange of electronic business data between companies. Bots takes care of all the needed communications, translations, protocols and standards."
Desktop Environments
GARNOME 2.19.4 released
Version 2.19.4 of GARNOME, the bleeding-edge GNOME distribution, is out. "This release includes all of GNOME 2.19.4 plus a bunch of updates that were released after the GNOME freeze date."
The GNOME Journal, June Edition
The June 2007 edition of the GNOME Journal has been announced: "It features an article about GStreamer audio effects, an interview with Ken VanDine about GNOME 2.18 Live Media releases, an introduction to Accerciser, and a summary of GNOME.conf.au 2007."
GNOME Software Announcements
The following new GNOME software has been announced this week:- Empathy 0.8 (new features and bug fixes)
- gdl 0.7.6 (build fixes)
- gedit 2.19.1 (new development series)
- gnome-build 0.1.7 (new features and bug fixes)
- gThumb 2.10.5 (bug fixes)
- Hotwire 0.567 (new features)
- PyGtksourceview 1.90.1 (new features, bug fixes and code cleanup)
- Rhythmbox 0.11.1 (new features, bug fixes and translation work)
KDE e.V. Quarterly Report 2007 Q1 (KDE.News)
KDE.News has announced the availability of the 1Q 2007 KDE e.V. Quarterly Report [PDF]. "Topics covered include the KDE PIM Meeting at Osnabrück in January 2007, progress on the Copyright Assignment (Fiduciary Licence Agreement) and reports from the Marketing Working Group, Human Computer Interaction Working Group, and Sysadmin Team."
KDE Commit-Digest for 24th June 2007 (KDE.News)
The June 24, 2007 edition of the KDE Commit-Digest has been announced. The content summary says: "Introductions of a Dictionary, Photoframe, and Facebook Plasmoids, and a Weather and Solid DataEngine in Plasma. Usability improvements and optimisations in KListView, used for icon views in Konqueror and Dolphin. The start of a shared, common location for vocabulary files across KDE-Edu applications, with initial implementation in Kanagram. Support for application-specific caches in the Icon Cache implementation, and further progress in the KOrganizer Theming and KRDC Summer of Code projects..."
KDE Software Announcements
The following new KDE software has been announced this week:- ACRED 0.2 (new feature)
- Amarok XM Tuner 0.01 (initial release)
- digiKam 0.9.2-final (bug fixes)
- DigikamImagePlugins 0.9.2-final (merged with digiKam)
- DON'T Let It Burn! 1.0 (unspecified)
- FALF Player 1.0rc4/rc5dev (new features and bug fixes)
- Firewall Builder 2.1.12 (new features and bug fixes)
- K3b 1.0.2 (new features and bug fixes)
- Kaffeine-Multidec 0.8.5-0.3.3 (unspecified)
- Katapult-Fast Track 0.1 (bug fixes)
- KCalculator 1.1 (new features)
- KDelayStart 0.1 (initial release)
- Kipi 0.1.4-beta2 (new features and bug fixes)
- KNetDockApp 0.72 (new features)
- kopete-thinklight 0.3 (new features)
- KTrafficAnalyzer 0.3.8-1 (new features)
- Lightweight Image Transcoder 1.0 (unspecified)
- MULR 0-1-1 (unspecified)
- MULR 0.2 (new features)
- PacKommander 1.0 (new features)
- Qtractor 0.0.3.662 (new features and bug fixes)
- Simutrans Starter 0.0.9 (unspecified)
- Vuze 1 (unspecified)
- youtubedownloader 0.2 (unspecified)
- youtubedownloader 0.2.3 (new features)
- Zinc Launcher 1 (unspecified)
Xorg Software Announcements
The following new Xorg software has been announced this week:- libX11 1.1.2 (security and bug fixes, documentation work)
- libXfont 1.2.9 (bug fixes and code cleanup)
- libXtst 1.0.2 (new features and documentation work)
- xbacklight 1.0 (initial release)
- xbacklight 1.1 (license addition)
- xf86-video-nv 2.1.0 (new features and bug fixes)
- xinit 1.0.4 (new features and bug fixes)
- xrandr 1.2.1 (new features, bug fixes and documentation work)
Simdock 1.1 announced
Stable version 1.1 of Simdock has been announced. "SimDock is a fast and customizable dockbar. It allows the user to launch applications showing some eye-candy animation. It is written in c++ and wxWidgets and fits well in Gnome but works on most desktop environments.It does not require Compiz or 3D acceleration."
Electronics
Electric 8.05 announced
OpenCollector.org has announced the release of version 8.05 of the Electric VLSI Design System. Changes include: "Various bug-fixes, routing improvements, and improved LEF/DEF import".
Games
Plunger 0.1.0 released
The WorldForge game project has announced the release of version 0.1.0 of Plunger. "Plunger is a 3D mesh converter. It currently imports Collada, OgreXML and Sears object format and exports Collada, OgreXML, Sears object format, MD3 and a text summary about the model."
Imaging Applications
Gimmage 0.2.2 released
Stable version 0.2.2 of Gimmage is available, it features bug fixes and code cleanups. "Gimmage is a small gtk image viewer, perfect for command line usage as it accepts directories and image filenames as arguments. It also has a filechooser integrated into the main UI, making accessing images and directories a snap."
Medical Applications
Freemed-YiRC Beta0.99 released (LinuxMedNews)
LinuxMedNews has announced the Beta 0.99 release of Freemed-YiRC. "Freemed-YiRC is a software project which aims to provide a product capable of providing Child Caring Agencies/Youth in Residential Care (YiRC) agencies with a fully functional internal case management/information system."
Miscellaneous
NLTK-Lite 0.8 beta released
Version 0.8 of NLTK-Lite, a suite of open source Python modules, data sets and tutorials supporting research and development in natural language processing, has been announced. "This version is substantially revised and expanded from version 0.7. The code now includes improved interfaces to chunkers, grammars, frequency distributions, full integration with WordNet 3.0 and implementations of WordNet similarity measures, the Lancaster Stemmer, simpler conventions for importing modules, and simpler installation."
Languages and Tools
Assembly Language
libdisassemble 2.0 released
Version 2.0 of LIBDISASSEMBLE, a Python-based opcode disassembly library for x86 processors, is out. "This version aims to provide a complete disassembly of IA32 instruction set. Future versions will include the addition of IA64/32 instruction set."
Caml
Caml Weekly News
The June 26, 2007 edition of the Caml Weekly News is out with new Caml language articles.
Java
OpenXava 2.1.5 released (SourceForge)
Version 2.1.5 of OpenXava is available. "OpenXava is a framework to develop Java Enterprise/J2EE applications rapidly and easily. It's based in business component concept. Feature rich and flexible since it's used for years to create business applications with Java."
Python
Python-URL! - weekly Python news and links
The June 25, 2007 edition of the Python-URL! is online with a new collection of Python article links.
IDEs
Anjuta DevStudio 2.2.0 (stable) -- Hurricane -- released!
Anjuta 2.2.0 (Hurricane) is the first stable release of the 2.x series. Anjuta 2.2.0 is a GNOME IDE that integrates seamlessly with your favorite development tools. "It features a number of advanced programming facilities that include project management, application wizards, an on-board interactive debugger, integrated glade UI designer, integrated devhelp API help, integrated valgrind memory profiler, integrated gprof performance profiler, class generator, powerful source editor, source browsing and many more."
Eclipse Europa coming soon
Eclipse Europa will be released on June 29. "Eclipse Europa is the annual release of Eclipse projects. Like last years Callisto release, the Europa release is a coordinate release of different Eclipse project teams. This year, the annual release includes 21 projects. By releasing these projects at the same time, the goal is to eliminate uncertainty about version compatibility and make it easier to incorporate multiple projects into your environment."
Libraries
Release libnetfilter_conntrack 0.0.80
Release 0.0.80 of libnetfilter_conntrack, a userspace library that provides an API to the in-kernel connection tracking state table, is out with bug fixes.ANN: Urwid 0.9.8.1 - Console UI Library
Version 0.9.8.1 of Urwid, a console-based user interface library, is out. "This is a maintenance release that fixes a number of bugs that have been found in 0.9.8."
Version Control
Mercurial 0.9.4 released
Version 0.9.4 of Mercurial, a source control management system, is out with a number of new features. Click below for details.
Page editor: Forrest Cook
Next page:
Linux in the news>>
