Search Results: "ag"

26 May 2010

Adrian von Bidder: The Debian Umbrella: Soon.

Update: I'm taking orders now. I was planning to take orders for the Debian Swirl umbrella starting tonight, but a bit of research showed that shipping prices for parcels are insane (CHF 37 for europe), but it seems I can get away with sending this as a Swiss Post Maxi Letter instead, which would result in a shipping price of CHF 12.50 for four and CHF 24 for up to eight umbrellas (1kg or 2kg.) So now I'll go and look into getting some kind of flattish box to stay within the allowed dimensions before I can be sure this is possible. In any case, I expect the delivery in the first week of June. Since I'll not be coming to Debconf, it would be nice if somebody could take some umbrellas to New York. I'm currently not travelling much, so I'd have to rely on a friendly volunteer. (I'm based in Basel, Switzerland; I am known to go to Z rich regularly.)

Matt Zimmerman: Using Mumble with a bluetooth headset

At Canonical, we ve started experimenting with Mumble as an alternative to telephone calls for real-time conversations. The operating model is very much like IRC, based on channels within which everyone can hear everyone else as they speak. Mumble works best with a headset, which offers better audio recording quality due to the proximity of the microphone, and avoids problems with echo and feedback. I like to pace around while I talk, and so I ve already invested in a Plantronics Calisto Pro, which includes a DECT handset, a Bluetooth headset and a nice charging base. My laptop has bluetooth onboard, so I set about trying to get Mumble set up to use the headset via bluetooth. The first thing I tried was to click on the bluetooth icon on the panel, and select Set up new device.... After setting the headset to pairing mode, I waited quite some time for it to show up in the list, but it never did. After opening the preferences dialog, I discovered that this was (presumably) because I had already paired it, ages ago. So, I went about trying to get PulseAudio to talk to it. After some hunting, I tried:
pactl load-module module-bluetooth-device address=00:23:xx:xx:xx:xx
This created a new Card in PulseAudio, which I could see in the Hardware tab of the Sound Preferences dialog and in pactl list, but it was inactive:
Card #1
Name: bluez_card.00_23_XX_XX_XX_XX
Driver: module-bluetooth-device.c
Owner Module: 17
Properties:
device.description = "Calisto PLT"
device.string = "00:23:XX:XX:XX:XX"
device.api = "bluez"
device.class = "sound"
device.bus = "bluetooth"
device.form_factor = "headset"
bluez.path = "/org/bluez/13899/hci0/dev_00_23_XX_XX_XX_XX"
bluez.class = "0x200404"
bluez.name = "Calisto PLT"
device.icon_name = "audio-headset-bluetooth"
Profiles:
hsp: Telephony Duplex (HSP/HFP) (sinks: 1, sources: 1, priority. 20)
off: Off (sinks: 0, sources: 0, priority. 0)
Active Profile: off
The Hardware tab confirmed that the device was Disabled, and using the Off profile. I could manually select the Telephony Duplex (HSP/HFP) profile, but this had no apparent effect. There were no Sources or Sinks to send or receive audio data to or from the headset (and thus nothing new in the Input or Output tabs of the preferences dialog). syslog hinted:
pulseaudio[15239]: module-bluetooth-device.c: Default profile not connected, selecting off profile
At this point, I recalled that when I suspend this laptop, the bluetooth driver gets unhappy. I don t commonly use bluetooth on this laptop, so I hypothesized that the driver was in a weird state, and I decided to try unloading and reloading the btusb module. Once I did so, the device showed up in the panel menu, with a Connect menu item. Aha! The manual module loading above may turn out to be unnecessary if the device shows up in the menu initially. I selected the Connect menu item, and a bunch of magic happened, with the result that I heard the headset s tone to indicate it was activated. Sound Preferences now showed it under Hardware as active using the Telephony Duplex profile, and it appeared under Input and Output as well. pactl list showed its sources and sinks. Mumble offered it as a choice for the input and output device. Progress! Some experimentation (thanks, Colin) revealed that other people could hear me through the headset just fine. However (Problem #1), I couldn t hear them clearly through the headset. If I switch Mumble s output to my speakers, they sound fine, so it s not Mumble. So I tried:
paplay -d bluez_sink.00_23_XX_XX_XX_XX /usr/share/sounds/alsa/Front_Center.wav
which also sounds awful. There is a whining noise, which gets louder when the audio signal is louder, which makes it very difficult to hear. I don t know if the problem is with PulseAudio, bluez, the kernel, or the device, but using speakers for output is a workaround. This does seem to cause some echo, though, so I ll need to track this down eventually. Problem #2 is that Mumble seems to prevent PulseAudio from suspending the headset s source. Even if I set it to Push to Talk mode, the headset stays active all the time, which will drain the battery. PulseAudio seems to do the right thing, and kill the radio link, if the source is left idle, and brings it up when there is activity, so this looks to be Mumble s fault. I ll need to fix this as well.

Michal Čihař: Great things on providing web based translation

Quite recently (just when migrating to gettext), it is possible to translate phpMyAdmin using web interface, which is powered by great software called Pootle. Thanks to this new interface, we've attracted quite a lot of translators and lot of languages are now much improved. Yesterday I also implemented way to backport these translations to old PHP based translation system which is still being used in 3.3 branch, so that even upcoming releases from this branch will benefit from this translation boost. Yet another great think which happened thanks to l10n.cihar.com, is availability of German version of Wammu website, where enormous amount of work has happened in last few days. Kudos to all people who are working there.

Russell Coker: UBAC and SE Linux in Debian

A recent development in SE Linux policy is the concept of UBAC (User Based Access Control) which prevents SE Linux users (identitied) from accessing each other s files. SE Linux user identities may map 1:1 to Unix users (as was required in the early versions of SE Linux), you might have unique identities for special users and a default identity for all the other users, or you might have an identity per group or use some other method of assigning identities to groups. The UBAC constraints in the upstream reference policy prevent a process with a SE Linux identity other than system_u from accessing any files with an identity other than system_u. So basically any regular user can access files from the system but not other users and system processes (daemons) can access files from all users. Of course this is just one layer of protection, so while the UBAC constraint doesn t prevent a user from accessing any system files the domain-type access controls may do so. If you used a unique SE Linux identity for each Unix account then UBAC would prevent any user from accessing a file created by another user. For my current policy that I am considering uploading to Debian/Unstable I have allowed the identity unconfined_u to access files owned by all identities. This means that unconfined_u is an identity for administrators, if I proceed on this path then I will grant the same rights to sysadm_u. UBAC was not enabled in Fedora last time I checked, so I m wondering whether there is any point in including it I don t feel obliged to copy everything that Fedora does, but there is some benefit in maintaining compatibility across distributions. For protecting users from each other it seems that MCS (which is Mandatory in the Debian policy) is adequate. MCS allows a much better level of access control. For example I could assign categories c0 to c10 to a set of different projects and allow the person who manages all the projects to be assigned all those categories when they login. That user could then use the command runcon -l s0:c1 bash to start a shell for the purpose of managing files from project 1 and any file or process created by that command would have the category c1 and be prevented from writing to a file with a different category. Of course the down-side to removing UBAC is that since RBAC was removed there is no other way of separating SE Linux users, while MCS is good for what it does it wasn t designed for the purpose of isolating different types of user. So I ll really want to get RBAC reinstalled before Squeeze is released if I remove UBAC. Regardless of this I will need to get RBAC working on Squeeze eventually anyway. I ve had a SE Linux Play Machine running with every release of SE Linux for the last 8 years and I don t plan to stop now.

Jose Luis Rivas Contreras: Chrome vs Firefox, again

Long time ago I stopped using Chrome for daily use and leave it only for my Google services like Gmail and Wave. Now, is my main browser even when it just stop working while I m offline (weird thing, btw). Is fast, starts fast, loads fast, runs javascript very fast. I can use websites as apps without installing another app to complement my browser like Prism and renders fonts wonderfully with @font-face. Now, Firefox, well First of all, I m using nightly builds of alpha version, so it s supposed to fail sometimes and I understand that but, it s not supposed to be faster as well? Loads after 1 min I launch it(UPDATE 2010-05-26: There was a loop on an addon making it start slow, now starts on 10 seconds which is pretty nice) and loads not as smooth as Chrome the websites, even using NoFlash, NoAds and NoJavaScript! In fact, if wasn t because Chrome stops working while I m offline I would not have any reason to use Firefox even while designing websites (just for checking). It s a shame, I really liked a lot Firefox and I hope Firefox4 get a really good speed bump.

25 May 2010

Lucas Nussbaum: Booting ISO or USB key images directly from Grub2?

I m playing with the idea of booting ISO images and USB key images stored in a disk partition directly from Grub2. That would allow to install Linux or test liveCDs without even using a USB key. It seems that Grub2 has everything needed for that (with a combination of drivemap and chainloader), but I can t seem to get it working and, as usual with boot stuff, it s a pain to understand what s happening. Has somebody recently tried that, or can point me to a howto?

Aurelien Jarno: EGLIBC and PowerPCSPE port

This has been roughly one year since Debian switched from GLIBC to EGLIBC, so it s probably the time to make a small report about this change. First of all, on the GLIBC upstream side, things has improved a bit since we now have regular stable release, thanks to Petr Baudis aka Pasky. The good point is that the stable releases are imported into the EGLIBC stable repositories. On the EGLIBC side the switch has helped to reduce the number of patches in the Debian package (for example, resolv.conf is automatically reloaded if needed), and has brought some bug fixes and improvements, especially for the arm, mips and powerpc targets. It should be noted that the newly created PowerPCSPE port for PowerPC e500 series CPU also benefits from EGLIBC, as it is not natively supported by GLIBC.

Matt Zimmerman: The behavioral economics of free software

People who use and promote free software cite various reasons for their choice, but do those reasons tell the whole story? If, as a community, we want free software to continue to grow in popularity, especially in the mainstream, we should understand better the true reasons for choosing it especially our own. Some believe that it offers higher quality, that the availability of source code results in a better product with higher reliability. Although it s difficult to do an apples-to-apples comparison of software, there are certainly instances where free software components have been judged superior to their proprietary counterparts. I m not aware of any comprehensive analysis of the general case, though, and there is plenty of anecdotal evidence on both sides of the debate. Others prefer it for humanitarian reasons, because it s better for society or brings us closer to the world we want to live in. These are more difficult to analyze objectively, as they are closely linked to the individual, their circumstances and their belief system. For developers, a popular reason is the possibility of modifying the software to suit their needs, as enshrined in the Free Software Foundation s freedom 1. This is reasonable enough, though the practical value of this opportunity will vary greatly depending on the software and circumstances. The list goes on: cost savings, educational benefits, universal availability, social rewards, etc. The wealth of evidence of cognitive bias indicates that we should not take these preferences at face value. Not only are human choices seldom rational, they are rarely well understood even by the human themselves. When asked to explain our preferences, we often have a ready answer indeed, we may never run out of reasons but they may not withstand analysis. We have many different ways of fooling ourselves with regard to our own past decisions and held beliefs, as well as those of others. Behavioral economics explores the way in which our irrational behavior affects economies, and the results are curious and subtle. For example, the riddle of experience versus memory (TED video), or the several examples in The Marketplace of Perception (Harvard Magazine article). I think it would be illuminating to examine free software through this lens, and consider that the vagaries of human perception may have a very strong influence on our choices. Some questions for thought: If you re aware of any studies along these lines, I would be interested to read about them.

Russell Coker: Links May 2010

AdRevenge is an interesting concept to pay for Google Adsense adverts about how companies suck [1]. If a suitably large group of people pay to warn you about a company then it s a good signal that the company is actually doing the wrong thing. A guest post by Mili on Charles Stross blog has an interesting analysis of the economcs of Intellectual Property and concludes that content is a public good [2]. New Age Terrorists Develop Homeopathic Bomb [3], an amusing satire of medical fraud and security theatre. The sit has a lot of other good satire too. Mark Shuttleworth wrote an interesting post about new window management changes that will soon go into Ubuntu [4]. He points out that the bottom status bar in applications is a throw-back to Windows 3.1 and notes that a large part of the incentive for removing it (and using the title-bar for the status) is the work on the Netbook version of Ubuntu. This is really ironic given that the resolution of current Netbooks is quite similar to that of desktop systems that were current when Windows 3.1 came out. Omar Ahmad gave an insightful TED talk about the benefit of using a pen and paper to send a letter to a politician [5]. Sebastian Wernicke gave an amusing and informative TED talk about how to give a good TED talk [6]. His talk gives some useful ideas for public speaking that are worth considering. Catherine Mohr gave a brief and interesting TED talk about how to build an energy efficient house with low embodied energy [7]. Her blog at www.301monroe.com has the details. Stephen Wolfram (of Mathematica fame) gave an interesting TED talk [8]. He covers a lot of interesting things that can be done with computers, primarily based on the Wolfram Alpha [9] platform which allows natural language queries of a large data set. He also talks about the search for a Theory of Everything. Esther Duflo gave an interesting TED talk about using social experiments to fight poverty [10]. She describes how scientific tests have been used to determine the effectiveness of various ways of preventing disease and encouraging education in developing countries. One example of the effectiveness of such research is the DeWormTheWorld.org project which was founded after it was discovered that treating intestinal worms was the most cost effective way of getting African children to spend longer at school. David L. Rosenhan wrote an interesting research paper On Being Sane In Insane Places about pseudo-patients admitted to psychiatric hospitals [11]. It seems that psychiatric staff were totally unable to recognise a sane person who was admitted even though other patients could do so. It also documents how psychiatric patients were treated as sub-human. One would hope that things had improved since 1973, but it seems likely that many modern psychiatric hospitals are as bad as was typical in 1973. It s also worth considering the issue of the treatment in society of people who have been diagnosed with a mental illness, it seems likely that the way people are treated in the community would have similar bad results to that which was documented for treatment in psychiatric hospitals even the sanest people will act strangely if treated in an insane manner! Also it seems to me that there could be potential for using a panel of patients assembled via the Delphi Method as part of the psychiatric assessment process as it has been demonstrated that patients can sometimes assess other patients more accurately than psychiatrists! Simon Sinek gave an inspiring TED talk about how great leaders inspire action [12]. Of course the ideas he describes don t just apply to great leaders, they should apply to ordinary people who just want to convince others to adopt their ideas. Stephen Collins write a good article summarising the main reasons why the proposed great firewall of Australia is a bad idea [13]. Lenore Skenazy who is famous for letting her 9yo son catch the metro alone during broad daylight on a pre-planned route home has created a web site about Free Range Kids [14]. She seems to be starting a movement to oppose Helicopter Parenting and has already written a book about her ideas for parenting. The incidence of crime has been steadily increasing, as has the ability of the police to apprehend criminals and recover abducted children. There s no reason for children to be prevented from doing most of the things that children did when I was young!

Gunnar Wolf: One more fatal accident in my usual environment

I was about to close down a good day of hard work, a heavy but useful day... I had even decided to take some time off to listen to some good music, and was heading off to bed on a good mood... Until I decided to read my contacts' latest rants. And I found very sad news - again. A ten year old kid was killed while cycling in Calle Nezahualpilli, Colonia Ajusco. I happen to know quite well that precise area - I lived very close to that street for some months in 2008. I eat in a small restaurant (what we call either a cocina econ mica, comida corrida or fondita) on that street. One of my usual bycicle workshops is also on that street - In fact, I wanted to go today, as both of my bikes' rear tires are flat, but had no time to make it. Anyway... Colonia Ajusco and Colonia Santo Domingo ("colonia" is basically... a neighbourhood in es_MX) are two very popular, economically depressed areas, just North-East of the University. Probably hundreds or thousands of students live in rented rooms in the area, as UNAM with its 300,000 students does not have any dorms (due to political reasons leading all the way back to the 1960s). Santo Domingo and Ajusco are also the part where Mexico City's main valley finishes. The hills begin, not too abruptly (we have a ~150m difference in the ~2Km spanned by both colonias). And... When I lived there, I was amazed at the amount of people moving by bike. The streets are too slow for motorized transit to properly flow, and it's often annoying to have to cross the region. It is mostly safe for cyclists. Anyway, this kid was having a good time on the street, and was killed by a microbus driver fighting his fellow over more clients. The driver, yes, was caught (by his passengers and other bystanders, according to the note), and did not run away as they often do in cases such as this one. Still, the kid died almost instantly, so catching the driver serves very little consolation. This Friday we will have BiciUNAMonos second monthly meeting. It is too soon, and I don't think we will end up going there. But I do feel this accident falls squarely inside UNAM user's territory. We cannot ignore it just because it happened outside our University's gates.

Russell Coker: GM Food and Vaccines

Michael Specter gave an interesting TED talk about the dangers of science-denial [1]. Most of his talk is about the people who oppose vaccines, such as the former Playboy model Jenny McCarthy who thinks that she knows more about medicine than people who do medical research. He notes that a doctor who advocates vaccination has been receiving threats from the anti-vaccine lobby, including threats to his children. An good new development is that Andrew Wakefield (the British ex-Doctor behind the discredited research linking Autism and Vaccination) has been barred from practicing by Britain s General Medical Council [2]. Michael also mentions the opposition to GM food which has the potential to save many lives in developing countries that have food shortages. This convinced me to reduce my opposition to GM food, it s really not GM food that I m opposed to but the poor testing, the bad features (such as the Terminator Gene), and the Intellectual Property controls which allow GM companies to sue farmers who accidentally have GM crops grow on their land due to wind-borne seeds. It s also a pity that there is no work being done on GM versions of any food crop which is only used for feeding poor people. Every GM plant is one that is used to provide food for rich people and is essentially a way for farmers in first-world countries to make more money. But GM versions of Cassava (with less of the toxic chemicals among other things) and Sorghum would improve the situation of many poor people. One interesting related development is that Craig Venter has just announced the creation of the first synthetic life [3]. This technical development could lead to dramatic changes in the production of basic foods, such as algae that produce proteins that have the ideal mixture of all the essential amino acids needed for humans as well as the semi-essential ones that children need. While feeding pond slime to children isn t going to be glamorous it would be a lot better than the current situation where a significant number of children in developing countries have their physical and mental development stunted due to malnutrition. Craig mentions the possibility of using his research to develop vaccines much faster, including perhaps the possibility of vaccinating people against fast evolving viruses such as the common cold!

John Goerzen: Free-Range Kids: A Parental Rant

There s a lot of unreasonable panic out there these days. Parents that don t want to let their kids even walk to the mailbox because of an irrational fear of abduction. (Children are more likely to die falling out of bed than be abducted, and before anyone panics, that s also exceptionally rare.) A woman that let her 11-year-old travel unaccompanied on the NYC subway he d been riding all his life unleashed a huge controversy. And there s also this maddening tendency for some parents to be so worried about wounding their children s self-esteem that they never want to say they ve done something wrong, and be so positive to them. Recent studies, as well as common sense, suggest that both attitudes are rather harmful. Terah and I are believers in letting children have cheap mistakes . If I see Jacob running through the kitchen about to trip over a toy he left out, I probably won t say anything. Him crashing to the floor after running on it won t even hurt him enough that he ll cry, but it will probably be far more effective at teaching safety than 20 days worth of me saying no running in the kitchen. Of course, we ll provide comfort for him when he s sad and be there to support him, but also give him more and more freedom to succeed or fail as he grows. This starts even younger. When he first started feeding himself, he got into this habit of throwing food on the floor. We had some natural consequences as a result. If his supper landed on the floor, then he would be all done eating. (Note: Jacob was always on the heavy side at that age anyway.) He couldn t reach his supper on the floor, and we weren t going to keep bending over to pick it up for him. Fixed that problem pretty quickly at least until he learned that he could wait until he was pretty full before throwing his food down on the floor (at which point we added a brief time-out). Or how about our reaction when he has mistakes. When he breaks something, whether accidentally or on purpose, we don t give him some sort of affirmation like Oh, that s OK, we can fix it or good try; you ll do better next time. It is NOT OK to rip the pull-up flaps out of a book or to stomp on those peas you dropped on the floor, and there will be predictable and reasonable consequences for doing so. As a result, when he does a good job, it ll mean more. He, at 3, has started sounding out letters, knows his alphabet, and can count to about 15 in English and about 3 in German. And those are things we give him a good job about. Two of the best things we can do for our children are: 1) be honest about their successes and failures; and 2) give them room to succeed and room to fail, so they can learn from both while the consequences mean a skinned knee or broken toy instead of a broken rib or foreclosure on a mortgage. The Free Range Kids FAQ makes excellent reading, and discusses how many of today s parents grew up enjoying this kind of freedom, and for various reasons are too scared to allow their children that today. Rather sad, really, especially given that today s world is safer.

24 May 2010

Carl Chenet: Nagstamon 0.9.3 in sid

Nagstamon 0.9.3 just landed in Sid. Nagstamon is a Nagios status monitor for the desktop. It connects to multiple Nagios or Opsview monitoring servers and resides in systray or as a floating statusbar at the desktop showing a brief summary of critical, warning, unknown, unreachable and down hosts and services and pops up a detailed status overview when moving the mouse pointer over it. Connecting to displayed hosts and services is easily established by context menu via SSH, RDP and VNC. Users can be notified by sound. Hosts and Services can be filtered by category and regular expressions.

Nagstamon in the toolbar

Successfully tested Nagios versions include 2.x and 3.x. Opsview connectivity has been tested with Opsview 3.5.

Hosts details with Nagstamon

If you don t like having a Nagios webpage always running in your web browser, you ll appreciate Nagstamon.

Lior Kaplan: Taking the rust of my debian packaging skills

582784 It s been a long time since my last upload to the archive. Actually more than a year and a half. This weekend I tried to get back to packaging, hoping to catch up with some of the needed work. The beginning was very weird, forcing me to review the developer references, the policy and the new maintainer guide for information I already forgot. After a few hours of hacking, it felt like I wasn t MIA at all. After 72 hours, I quite happy with the results: Another issue I started and not sure how to continue is finding programs who lost their bidi support due to the last upgrade of libfribidi-dev. In the last version (0.19.x), the fribidi-config utility was dropped by upstream and pkg-config should be used instead. The problem is that programs which build against libfribidi-dev, look for fribidi-config and FTBFS (see #571351) or ignore it s disappearance and stop providing bidi support (see #582784).
Filed under: Debian GNU/Linux

Neil Williams: HP laptop battery recall

From Planet Gnome - apologies if you read both planets but I hadn't seen this recall before it was posted by Richard Hughes. If you are affected, feedback the required metadata to upower using:
for i in /sys/class/power_supply/*/*; do echo $i; cat $i; done


My HP dv6000 laptop met the initial criteria but once I'd entered all the info, I got a message:

Your battery is not affected and is not part of this replacement program.
Thank you for your cooperation. ..... You may continue using your battery.


Which is nice.
:-)

Julien Danjou: Making startup-notification XCB native

I'm trying to work on XCB this week. And today I've started to accomplish the second step of a long term goal: making an X11 only library using XCB as its primary interface instead of Xlib. Last year, I had extended the API of startup-notification to support XCB as a back-end. This had been made possible by factorizing some code, duplicating the X11 code and translating it into equivalent XCB. Today, I've accomplished the second step, being dropping the Xlib code inside startup-notification to keep only the XCB one. For this, I used the x11-xcb library, which is available when Xlib is compiled with XCB as its transport, which is nowadays the standard. This library provides the function XGetXCBConnection, which can convert a Display pointer to a xcb_connection_t pointer. Consequently, it's now possible to write and execute XCB based code and being compatible with Xlib. I've made some benchmark of my work for the occasion, in order to measure what the gain is. The first table described 1000 launches of a fake application (a modified version of the startup-notification test suite actually). The X server is local (the latency is very minimal then). The gain is computed between the same back-end type for the total time. Full XCB is the "version" I'm working on.
Version - Back-end User time (seconds) Kernel time (seconds) Total time (seconds) Gain
0.10 - libx11 3.20 7.42 12.989 -
0.10 - libxcb 2.76 7.36 12.414 -
Full XCB - libx11 2.74 7.50 12.380 4.6 %
Full XCB - libxcb 2.72 7.16 12.037 3.0 %
The user time and kernel time are provided but are not really interesting. XCB does not offers a big gain in CPU execution time, but is more about latency. Anyhow, there's always a gain with XCB. This second table describe the same test but running only 100 times over a slow network.
Version - Back-end Total time (seconds) Gain
0.10 - libx11 76 -
0.10 - libxcb 35 -
Full XCB - libx11 72 5.2 %
Full XCB - libxcb 33 5.7%
The gain is relatively small, about 5 %. But anyhow, there's still a gain. Note that the difference between the execution time of the same test written in XCB and Xlib is just huge. I've tried to optimize the Xlib test, but I did not manage to win more seconds. In conclusion, considering that startup-notification is only used when an application launches another application, the perceivable gain might be even smaller. But anyhow, I think it's worth it.

Axel Beckert: Perfect Team: autossh and GNU Screen

SSH is definitely one of my most often used tools, not only for system administration at work but also on the road with my netbook, an EeePC 701 running Debian Sid. On the road, it often happens that I have a flaky WLAN or UMTS connection, so I often have to kill (via <Enter>~.) and reconnect my SSH session due to a changed IP address or so. First step against problems arising from using SSH over unreliable network connections is of course GNU Screen. Second step is use SSH keys and ssh-agent to not needing to type the password on every reconnect. But it s still very annoying to kill the SSH connection and call ssh again manually. For luck there is autossh, a wrapper around SSH which regularily checks via two tunnels connect to each other on the remote side if the connection is still alive, and if not, it kills the ssh and starts a new one with the same parameters (i.e. tunnels, port forwardings, commands to call, etc.). It s quite obvious that this is perfect to be combined with screen s -R and -d options (Reattach if a detached screen is around, else start a new screen; detach a currently attached screen), so I found myself very often typing (or fetching it from the commandline history :-):
autossh -t sym.noone.org 'screen -Rd'
-t is necessary to allocate a terminal device on the remote machine which is not done by default if you directly call a command via ssh. In comparision to OpenSSH, autossh needs the single quotes, because otherwise it would parse -Rd as options to parse to ssh and bail out. That s not a real problem, but when you re used to just type ssh -t sym.noone.org screen -Rd without any quotes, you ll run into this then and when. Update, 25-May-2010, 14:55: As Carsten Hey points out, autossh also supports the -- option to declare that all following options and parameters must be passed to ssh itself. (End of Update) Typing that often and mistyping it then and when cries for an shell alias or an shell function. So I came up with the following shell function:
asc()  
    autossh -x -a -t "$@" 'screen -RdU'
 
I used a function instead of an alias in case of autossh will in future regard all parameters given after the command as part of the command as ssh does. The additional options -x and -a disable X and SSH Agent forwarding which both don t work if you reattach to an already running screen. And if you re using Zsh as I do, you can even add some more format string magic to set the window title more or less to the expanded alias, eh, function:
function asc()  
    # Set the title to something more obvious, e.g. the expanded
    # alias, eh, function
    print -Pn "\e]0;%n@%m: autossh -t $* 'screen -RdU'\a";
    autossh -x -a -t "$@" 'screen -RdU'
 
compdef asc=ssh
Update, 25-May-2010, 14:59: As Hauke points out in a comment, Zsh users should also declare that asc should have the same tab completion as ssh itself. The example above has been updated accordingly. (End of Update) In the meanwhile on the EeePC I use asc on the commandline more often than ssh itself. And I nearly no more type autossh. (The most common exception here is autossh hostname tail -F /path/to/some/logfile.) Using that function you can also add common ssh options for tunneling, etc. I use it most often like this:
asc -D 1080 sym.noone.org
This opens a SOCKS proxy on localhost, port 1080 and that way I can surf via the host I m connecting to by SSH. There s one small drawback though: You didn t expect that I can just invent some new three letter command without a namespace clash, did you? There is a free game called Advanced Strategic Command whose binary (and Debian package) is named asc, too. If you have that game installed, you can always call it using its full path, e.g. /usr/games/asc on Debian. P.S.: My whole grml based .zshrc is also available via git at git.noone.org as well as on github.

Christine Spang: Christine Spang: out with the old, in with the new(er)

I just replaced my aging 2004-era PC with wait for it a 2005-era PC. A friend is moving across the country so I'm taking it off his hands. Swapping hardware between Freyja and Earlgrey The differences between the two are more than just the year of time, though: one was hand-built from parts, while the other was a commodity off-the-shelf Compaq. So the new machine, while not strictly faster by the clock, is 64-bit and is much more amenable to upgrades. While the added bulk is a bit annoying, the case has a lot more space in it up to 8 or so drive slots (I can't imagine ever needing that many), and 4 RAM slots which is a sure step up from the limitation of two drive slots and two RAM slots in my old machine. The most visibly shiny parts in the new desktop experience are 4G RAM versus 1G, and a nice ATI GPU. While I'm glad my OS allowed me to squeeze six years out of my main machine, I'll be happy to stop shaking my fist at Chromium for eating all my memory! The new machine will keep its old name: earlgrey.

Asheesh Laroia: Kat and Asheesh, on identity

Six months ago, I was talking with Kat. We were talking about talking. On imperfection Kat wrote:
<mindspillage> I think I have to be very very comfortable around someone to be able to be imperfect around them.
<mindspillage> (at least, without feeling horribly embarrassed about it)
<mindspillage> More so if what I'm doing is part of my identity.
It's safe to be bad at dancing, she explained; she doesn't consider herself a good dancer, so nothing's at risk. On flames I had recently written about diversity in free software. Kat showed me a piece she had written, but not yet published, on a similar topic. I thought she should simply publish the piece as-is. Instead, she worried:
<mindspillage> I feel like I have a hard time getting across what I think without coming across as antagonistic.
I've felt the same way. Years ago, I told my friend Venkatesh that had sent a flame to a mailing list we're both on. He retorted that my flames lack flame. So then I thought about why I might feel I've written a flame, even when no one else felt that way. I wrote to Kat:
<paulproteus> Expressing oneself is a frustrating experience.
<paulproteus> It may seem like you're taking this out on other people.
<paulproteus> In fact, you're just frustrated.
<paulproteus> And fighting (successfully) your own urges to just be quiet.
<paulproteus> So at the end you'll feel like you fought a battle, and that seems like you wrote something that others would feel is antagonistic.
Maybe for Kat's writing and my "flames", there was some sort of antagonistic process in which we fought ourselves. That fight doesn't have a lot to do with the resulting text, so it's invisible to the reader. I think this process might leave us vulnerable in another way: if our urges to stay quiet come from a sense of isolation, and we manage to stay quiet about that feeling, no one will sympathize with us. We'll appear to be healthy, active participants in a conversation where we express ourselves. Other people with a similar "process" for self-expression won't get a chance to empathize. (This is why I'm interested in putting together a Debian for Shy People caucus. I hope my Debconf proposal for a Birds of a Feather session is accepted!) On finding a way out We concluded on a happy note:
<mindspillage> I haven't been answering Wikimedia mail for a while. Then I figured out that I don't have to use my real name, so I don't have to answer as someone with responsibility, I can just be some random volunteer.
<mindspillage> Most of it is silly and trivial. But sometimes I am really able to address someone's concern or change someone's mind, and I forget how good that feels.
<mindspillage> (There are some real jerks too.)
<mindspillage> I got someone who was being snarky to apologize for being so rude. That was kind of awesome. Sometimes it doesn't take very much to make me happy.
P.S. A note from the archives Apparently, for me, speaking French is exempt from the above restrictions.

23 May 2010

Roland Mas: FusionForge news, May 2010

The usual semi-regular bits of news from the FusionForge project. We continue being quite active, with several hundred commits each month. The momentum doesn't seem to stop even after the 5.0 release last month. A large part of the activity stems from the Coclico project, which has several work-packages related to convergence of code across forges (mostly between FusionForge and Codendi). This convergence comes in three flavours: All in all, a fairly busy period for FusionForge. The current trunk is evolving rather fast, with some long-overdue rewrites being underway. Interesting times.

Next.

Previous.