Search Results: "ema"

7 December 2007

Biella Coleman: DMCA in Canada

Canada in many ways looks and feels like the United States (and vice versa) but upon closer inspection, there are some pretty large and important differences and I think the more Canada walks away from the US path, the better. So when I heard that Canada is considering a DMCA like bill, I was of course disappointed. If you are Canadian, do your political stuff to stop it (write your MP, etc. etc. etc.) and help keep Canada unique!

Mario Iseli: QA Extremadura 2007, my Health, new Job

Sunday afternoon I came back from the QA meeting in M rida (Spain). I host some of the pictures on my machine: http://www.marioiseli.com/stuff/qa-extremadura-2007/ (thanks to Cyril Brulebois for the pics) As I have written to debian-devel-announce yesterday, I was mostly working on MIA stuff, it was also great to have some personal discussions with several DDs. I hope that there will be such a great meeting again, maybe next year. :-) Monday in the evening I got a phonecall from the company where I had a personal interview last tuesday. They can adopt my apprenticeship. Yay… There are several reasons why I want to leave my current workplace (Stadt Grenchen): I have almost nothing to do, I learn nothing anymore, some people in my team were an interpersonal catastrophe, noone knows what the work “responsibility” means. I don’t want to go into the detail, but at least they reached that I got several nervous breakdowns, ending at the doctor wednesday afternoon. As I told, my nerves are down, I can’t sleep during the night here, motivation for life was down in the cave. This week I don’t need to work at all (medical certificate) and the next 2 weeks only 50%, so enough time to relax and get healthy again. Also thanks to my girlfriend Lisa for always being there for me… Tomorrow we will be a pair for already 4 months, Tempus fugit…
01.02.2008 I will start then my new job as a Systems Administrator and Networking-Dude for an ISP, more details will follow :-) Regards,

Aigars Mahinovs: Webmin alternatives

Everyone knows that Webmin is nasty - it does things in wrong way on a pure and nice Debian (and Ubuntu) systems and for some reason is not included in Debian (post-sarge) or Ubuntu. That does not inspire confidence in a root-running web based software to say the least.
I have a need to have a Linux server and give an administrator the ability to add/remove users, configure some LAMP settings, some email settings (SMTP, POP, IMAP, Spam/Virus protection), Samba and those kinds of everyday system administration tasks on a SOHO Linux server without having to know much about Linux. Unfortunately I am very hard pressed to find anything that I could just set up and forget. Does anyone have any good experiences on this?

6 December 2007

Eddy Petrișor: I am laptop-less, but disk-ful

Today I went for the second time[1] to emag's service[2] to have my laptop's[*] battery replaced since it was powering the laptop only for 15 (yes, fifteen) minutes. This after only 11 months since I bought the laptop[**].

I didn't observed this drastic reduction until recently (last time I remember was about 1 hour and 50 minutes, back in August), because I wasn't so mobile since August.

To make the long story short, I had to: wait, wait, argue, wait, argue, talk normally to the manager, wait, wait, argue, argue, observe sheer contempt from the personal when I asked again for the manager, talked normally to the manager, left after 4-5 hours wasted (+2 yesterday).

All this just to be able to keep my data safe by holding on to my hard disk, since they insisted they wanted the whole laptop[3], and making them write on the warranty receipt they were the ones who pulled out the HDD (I might be over-cautious/paranoid, but I wouldn't trust emag with the garbage bin).


Now I am on a forced vacation away from Debian for an undefined time, although I might be able to send mails and do make small patches from work.


Hey, emag:


[*] Dell Inspiron 6400 / E1505
[**] when I think the long battery time was one of the most important points, it looks ridiculous now to have such a bad degradation in such a short time

[1] first was yesterday, but due to some support person's incompetence I had to postpone - I asked two questions, they gave me two wrong answers
[2] after all this I wouldn't recommend emag to anyone
[3] You might ask why would they need the whole laptop for a clear 'battery is broken' complaint? Apparently "the service can't test the batteries without the laptop". They probably have neither any spare laptops nor dedicated equipment to measure batteries.

Erich Schubert: Fight against surveillance

The german government (that is the CDU CSU and SPD partys) passed a law that would require communication providers to keep connection data for half a year. This data retention includes phone calls, emails and internet connection data such as IP addresses.This law was passed as a "preventive" step against terrorism, mostly. Which is such an hilariously bad argumentation, actually.This is a serious step towards total surveillance, and is considered to be unconstitutional by many. Amongst others, it seriously undermines Confidentiality protection for e.g. priests, lawyers, doctors and journalists. Apart from opening the doors for total surveillance, of course and not having any desireable effect when it comes to preventing crimes, especially terrorism. Over 20.000 people already have already signed a complaint of unconstitutionality to be handed in at the Federal Constitutional Court in germany. This would then be the biggest complaint of unconstitutionality in the (short) history of the Federal republic of Germany. (1300 people complained 1983 against the census, which led to privacy protection becoming considered a key role of the german constitution)Right now, the law is waiting to be signed by the German state president (and we hope that he might refuse to sign it). Once it has take effect, the complaint can be handed in.Web page with further information.If you are a German resident, please join the 20.000+ others who have already signed a mandate for the complaint of unconstitutionality. Deadline is December 24th.It's our freedom we're fighting for!

Anthony Towns: Asus eeePC

Okay, so any excuse to bring out the Laphroaig is fine by me, but the cute little eeePC is better than most. That it’s cute and popular is all very well, but what really makes my day is this is the first device I’ve seen that both doesn’t hide the fact it’s running Linux, and is available in maintstream stores in Australia. A random review from the Sydney Morning Herald:
You also don’t get Windows. Asus has adopted the free Linux operating system that’s been slowly yet steadily growing in popularity over the past decade. This keeps the cost down and makes better use of its relatively modest hardware, which would creak under the weight of Windows. It does mean not being able to use your favourite Windows software but, fortunately, the Eee PC comes with dozens of programs, including the familiar Firefox web browser and Skype for online phone calls.
That came out on the day the eeePC was released in Australia. Three days later, they did a followup:
Taiwan computer maker Asus might have underestimated the local demand for its diminutive Eee PC, as the $499 laptop is now virtually sold out in Australia.
From that, there’s a brief take on who’s actually buying them:
“We’ve had customers coming in buying two or three units for the family - the mix of customer has been probably novices more than the tech types,” he said.
It’s really good to see that Linux is getting credit in pretty much all those stories, no matter how mainstream. Xandros is pretty rarely mentioned, and I don’t think I’ve seen Debian mentioned yet. But even without the credit, it’s still pretty cool that with the eeePC and Dell’s trysting with Ubuntu, the real in-roads to pre-installed consumer Linux these days are building on Debian. I’d always expected that Red Hat or SuSE or someone with more commercial muscle would get through that door first (they’ve certainly had box sets more readily available!), but apparently elitist, freedom obsessed, techno-geekery actually works better, somehow. At least when there’s a company to put a smiley face in front of it all :) The other interesting thing about choosing Xandros, is that it presumably means the eeePC is covered by Microsoft’s patent protection scheme – which means no baseless threats against eeePC users from Microsoft, but also that Microsoft’s probably getting a cut of whatever Xandros receives from each eeePC sale. Whether you think that’s a problem or not, the result is probably going to be that it’s the thin edge of the wedge: it’s removed Microsoft from blocking a Linux preinstall on consumer hardware, which means we can see that regular people like Linux systems enough that they sell out in days. And that means Linux systems are a fact of life, and if Microsoft try to stop them by making it difficult for you to sell Windows systems, well, that’ll just make it difficult to sell Windows systems – which is another win for Linux. And once you get to the point where the argument for paying off Microsoft doesn’t rely on keeping your OEM deal for Windows, but is just a matter of whether their patents are actually valid… Oh, also nice from the promoting free software angle, is that the first thing you see if you decide to visit Asus’s eeePC site to check the gizmo is the news item:
2007.11.27 ASUSTek is committed to meet the requirements of the GNU General…
Add the fact that an eeePC running a Debian-derivative has access to all the software in the Debian repositories for no cost, and the new government’s planned rebates and investments in IT probably mean that parents can get close to a full refund, and you’re getting pretty close to a choice of spending nothing and getting a popular, reasonably functional and very portable laptop with all the software you could ever want, that just happens to be running Linux, or paying an extra few hundred or thousand dollars to get a Windows laptop, and then probably pirating whatever software you end up needing. In any event, to my mind, that makes 2007 the year of the Linux on the desktop: everything from here is just a simple matter of quantity. What’s next?

Gunnar Wolf: Welcome on board!

Yes, yes, I know I already said so, and surely in a more visible site, and even he also announced his victory over DAMnation... But still, having more Mexicans in this little project I call home makes me very happy. So, welcome on board, Rodrigo!

5 December 2007

Biella Coleman: Rethinking Blogs: The importance of fewer posts and preaching to the choir

It is hard to believe that I have been blogging for over five years. And what is clear is that being an assistant professor is not all that conducive for blogging and this is materially evident in my sparse posting pattern over the last few months. It has been particularly bad in the last month thanks to a week long international trip, back-to-back sickness over Thanksgiving week, and finally going to Washington D.C. for the AAAs. But this retreat from blogging as well as teaching on so-called Web 2.0 software, like blogs, has made me rethink the value and limits of the craft of blogging and so I am going to take some time (that I feel like I don t really have, but oh-well..) to write them down as I am preparing a short piece for on the politics of Web 2.0 and I hope I can transfer some of these ideas there. So as I have already mentioned, I am an now infrequent blogger. Prior to the era of RSS, this could have meant the death of my blog because if people went to visit my page and there was no new post and then this happened a few more times, they would just stop visiting. The magic of RSS is that it brings the blog post to you and this alters the landscape of possibilities within the context of what has been nothing short of a seismic explosion of blogs. What I am finding and this will be no surprise to anyone is that it is just too difficult to keep up too many of a certain class of blogger the prolific poster who posts medium to long posts and worse, nearly everyday! To make a point about the effects of this, allow me to tell a story: Two blogs I really like are Joe Reagle’s blog on Open Communities as well as Tenured Radical. Both provide captivating posts but I recently unsubscribed to Radical Tenure and not Joe Reagle s. Why? My decision was purely pragmatic. Because she posts way too much, I just can t keep up. If I stop reading her blog for 2 weeks, and then pay a visit via bloglines, I am faced with a blogolanche and I am trying to avoid, at all costs, overwhelming situations. On the other hand, if I stop reading Joe s blog for 2 weeks, there may be one or two posts so I feel like I can spare the time to continue reading. Ironically, I will now visit Tenured Radical every month, much as I did prior to the RSS era, just to take a quick scan and see if there is anything I must read. There is another class of blogs, such as Sivacracy, that update their site frequently but the posts are tidy and short and so I can usually keep up and they provide important news for my projects. But the type of blog that provides longer ruminations has proliferated (and I really like reading those) but I suspect that as the blogosphere has expanded, less people can commit to those types of blogs. In other words, today, you may hang on to more readers, if you only blog 1 to 2 times a week instead of 3-5 weekly posts that are medium to long in length. Now I may be completely OFF the mark with this by generalizing my own experience so I would be interested in hearing people s experiences or better, if anyone could point me to someone who studies these types of pattern, I would really appreciate it. On a related note, last week I taught a now famous piece by Cass Sunstein on political balkanization on the Internet that is in part secured by blogging. His core argument, which I think stands to some degree, is that the blogosphere is less an arena where people with different inclinations and views meet to debate, and thus change their views, but is an arena where your pre-existing ideas are reinforced because you are simply reading and debating with people who hold your worldview. As I mentioned, I think this is true in so far as you don t see people on the left and right engaging in some debate that substantially transforms their ideas. But the argument is faulty or missing something crucial about the nature of politics, in so far as that the so called left or right or so called liberal and conservative positions are truly not unitary so that if different types of liberals/lefties are engaging with each other to change positions and ideas within that group, well then, the critical function of blogging is in fact well and alive. To state using an example, there are plenty of liberals who, in my opinion, could use a little radicalization and perhaps this is happening in the blogosphere because people come across a spectrum of ideas and positions from within their political pole. Finally and this point really is not mine but I am poaching it from Jeff Juris who made it last weekend at the AAA meeting during his presentation on activist videos. One of his findings was that activists were the only ones watching video s documenting protests when hosted on radical political sites like Indymedia. When they were placed on Youtube, the audience expanded considerably: conservatives were also watching them, but they effect was not to make their more sympathetic toward the left and their political points, but simply to reinforce their position, which is evident in the archived comments expressing their great distaste of the left. This is a perfect example of the Balkanization that Sunstein talks about but with an important reversal: it comes from confronting difference not avoiding it! But Jeff made the excellent point that there is a critical function in preaching to the choir: it ensures that the choir will not stop singing! That is, your political passions are not simply ensured, they must be renewed and given the massive amounts of apathy peppering our population, renewal by confronting what you believe in, is vital. So my advice is keep producing posts, keep reading even if it tends to be stuff you already believe in BUT please, post less. Less, I think, is really becoming the new more….

Russell Coker: The Meaning of Godwin s Law

A widely cited unofficial rule on the Internet is known as Godwin’s Law [1]. In it’s original form this rule states that “As an online discussion grows longer, the probability of a comparison involving Nazis or Hitler approaches one“. Mike Godwin noted that “overuse of Nazi and Hitler comparisons should be avoided, because it robs the valid comparisons of their impact“. The purpose of noting and publicising this is to reduce such false comparisons. It’s often used as a rule for conduct in various fora where it’s regarded that if you compare your opponent in a debate to Hitler or unjustly call them a Nazi then the debate is over and you have lost. In more recent times due to successful application of Godwin’s Rule the frequency of inappropriate comparisons has dramatically decreased. This combined with the small number of people on the net who are interested in discussing historical events that happened ~60 years ago (and the even smaller number of people who are interested in learning about them) means that the possibility of robbing valid comparisons of their impact is small. Now a large part of the use of Godwin’s rule is because it’s regarded as an ad-hominem attack that distracts everyone from serious discussion more than most such attacks. To see examples of this you merely have to do a Google search for “Bill Gates” and “Hitler” (currently 597,000 web pages have both those terms). Note that the original reason for avoiding such false comparisons is given to sustain the impact of legitimate comparisons. It is quite legitimate to use the term Nazi when describing anyone who wants to implement mass-murder and slavery on a national scale (or any of the other awful things that the Nazis did), or the propaganda and other mechanisms that the NSDAP used to gain power. It is also legitimate to make historical comparisons, comparing Stalin to Hitler is historically valid (both were awful tyrants that committed a similar range of crimes) - I’m not going to compare them in this post but I merely note that such a comparison is valid (and is the subject of much debate by people who are interested in history). I’ve just had a religious zealot named Elder Dave accuse me of breaching some new version of Godwin’s Law. I believe that my mention of the fact that his religious group (which wants to deny homosexuals the same legal rights as all other people) has some beliefs in common with the Westboro Baptist Church [2] is valid. The Westboro Baptist Church seems to be the leading organisation in the English-speaking world for demanding legislation to discriminate against homosexuals. Anyone else who demands such legislation IS trying to achieve similar aims and should expect this to be noted by everyone who has any knowledge of what is happening in the world. Religious groups are given a lot of freedom to discriminate internally (EG “Priest” is one of the few jobs that can be denied to a qualified woman without any legal recourse). Also I think that most people will agree that it’s acceptable for them to advocate self-repression (EG the book What Some of You Were [3]). But when they try and get legislation enacted to institutionalise such discrimination I believe that they are going too far. As for why the 95% of us who aren’t gay should be bothered about this issue, there’s the famous poem by Martin Niem ller which is known by the line “First they came for the Jews” [4] (actually there are a few versions of the poem some of which don’t mention Jews - check the link for details). Here’s another Wikipedia link for the same poem [5].

Stefano Zacchiroli: pts debian style

On wiki.d.o and PTS styles [Eddy, you're totally right in stating that it is a pity to base the PTS reword on the wiki.d.o current theme. Actually, it would have been a pity :-), indeed after some people commenting that the wiki.d.o current theme is just one of moin's default I've made up my mind. In particular, thanks to Dan Callahan who contributed a new CSS, we now have a really more Debian-ish theme for the PTS. Here are some samples though, as you can guess from the URL, these links are not meant to last. I've been quite busy since my return from Extremadura and that's why I haven't mentioned the new colors on planet; I guess the next you'll see is directly a change in the PTS pages in the next days or something. On the reworking of the wiki.d.o theme though, I think making it resemble www.d.o is not the way to go. After all there have been many proposals to change it because a lot of people think it is not that nice, and many more think that it feels very old-fashioned, actually: too much old-fashioned. (The fact that those actual proposals haven't been turned into a working reality is sad, but somewhat unrelated ...) I would much prefer to see a wiki.d.o theme that is somewhat Debian-ish, i.e. it uses our "social colors", but which feels less ancient than current www.d.o. I think Dan's work is an example that something in that spirit can be achieved, maybe we can collaborate? (Well, actually you can, I'm nowhere near a web designer :-) )

Andrew Pollock: [life] Queensland dragged kicking and screaming into the 60's

I'm pleased my home state of Queensland (which bills itself as the Smart State) has finally decided to start fluoridating its water, a move the rest of the country made back in the 1960's and 1970's. Hardly surprising I guess, when the No campaign for a referendum on daylight saving involved a fear of the curtains fading from that extra hour of sunlight... I remember when I was little, my Mum used to give me fluoride tablets. Dentists to this day, who have known I've grown up in Brisbane, have remarked how they can tell by my teeth that I've had fluoride as a kid. Apparently ones teeth are noticeably different (for the better) if fluoride has been involved.

Kartik Mistry: Foss.in: Debian/Ubuntu Project Day

* I was too tired to write this yesterday. Yes, it was very hectic day (but great fun!). Things started very well. Sam and Bubulle did great presentations (specially, this slide from bubulle’s presentation!). Problem with G0SUB’s laptop lead our workshop in very bad situation but Karunakar’s laptop made life easy by some percent! Thanks to him!! Personally, I will not say anything about last two talks, but we have to be very careful next time :( * Congrats to Varun for being 4th Indian Debian Developer! Yeppie!

Matthew Garrett

Seth Oster, executive VP and chief communications officer of the MPAA, told Ars that the notice came over the Thanksgiving holiday when their offices were closed. "As soon as we came back and discovered that there had been someone who had raised some concerns, we removed the software," Oster said. "Anytime anyone raises any reasonable concern we look at it because we take copyright very seriously at the MPAA." He also denied Garret's assertions that the ISP was involved in the takedown, saying that the MPAA chose to take the toolkit offline.

(from Ars)

The bit about Thanksgiving is basically accurate - I contacted them at 15:52 Pacific time (23:52 GMT) on Friday the 23rd of November, saying that I'd take further action if things hadn't been fixed by close of business on the following Friday (the 30th). While I'm happy to accept that this might have cost them Friday and Monday (if the MPAA are the sort to offer a 5 day long weekend), that's still 4 business days of response time. I telephoned them on Friday morning (around 10AM Pacific time) and was told I'd get a call back shortly. By Saturday it seemed likely that this wasn't going to happen, so emailed the ISP. At 19:13 Pacific time on Saturday, I received an email from the ISP informing me that they were going to contact Paul Egge at the MPAA. There was an ISO available from the MPAA site until at least 09:22 Pacific time (17:22 GMT) on Monday the 3rd of December, which had been removed by 23:00 or so GMT (the next time I checked).

So, to summarise. The infringing material was still available the best part of 9 days after the original notification was sent. At least 4 of those 9 were business days. The material was not removed until after I had contacted the ISP and they had informed me they were going to contact the MPAA. Further interpretation is left to the reader.

4 December 2007

Julien Danjou: rebuildd demo

I've set up a quick rebuildd demo. It may allow you to rebuild one of your package on etch/lenny/sid and for amd64/i386 as you wish. You will get build log by email. I've just wrote the PHP page in 2 hours. I just hate Web interfaces and PHP is crap, seriously. For the record, I've tried to use DataGrid, and after having lost 1h to get it work with no PHP/PEAR error printed or available, I managed to have it working with a big pear upgrade-all. OMFG.

Biella Coleman: The Liberalism of Anthropology and the Anthropologies of Liberalism

In a few years I want to organize a panel for the AAA called “The Liberalism of Anthropology and the Anthropologies of Liberalism” that opens the door to discussing the role of liberalism in the general anthropological project (notably in trying to breed tolerance) and how anthropological work, especially of the last twenty years (although really since its inception) has also worked to critically disturb the liberal project (in many ways, but including debunking the myth of the liberal subject and voicing the limits of liberal tolerance). I want to say more about the ways in which anthropologists have walked this line, but I have to read for tomorrow’s class and more than anything else I wanted to permanently jot this down so as to not forget my title.

Bernhard R. Link: Pretty print library hierachies

Playing around with awk and graphviz can lead to nice but usually totally useless graphs:

   #!/bin/sh
   if test $# != 1 ; then echo "Missing argument!" >&2 ;  exit 1 ; fi
   FILENAME="$(tempfile -s ".ps")"
   ldd "$1"   mawk &aposBEGIN print "graph deps  " END print " "  function dump(name,binary)   system("objdump -x " binary "   grep NEEDED   sed -e \"s#.* # \\\"" name "\\\" -- \\\"#\" -e\"s/$/\\\"/\"")  BEGIN dump("&apos"$1"&apos","&apos"$1"&apos")  /=> \//   dump($1,$3) &apos   dot -Tps -o "$FILENAME"
   gv "$FILENAME"
   rm "$FILENAME"
   

Ondřej Čertík: M rida - wrap up

From November 28 till December 2, 2007, I attended a Debian QA and release teams work session in Extremadura, which is an autonomous community of western Spain, that managed to install Debian on 90000 computers in every school (technically a Debian based distribution called gnuLinEx) and Junta de Extremadura also sponsored this meeting.

I took photos of all participants, see my first, second and third posts. When I arrived at the Madrid airport where we first met, I set myself a goal to remember all names and faces, so I used my blog to help me and I think I succeeded in the end. :)

See also our wiki page that we used prior and during the meeting.

So what did we do besides throwing candies?


Lucas Nussbaum will send a summary email soon about the meeting, so I'll just speak for myself:


I worked with Gon ri on svnbuildstat, that is a service for building packages and show statistics about lintian/linda/piuparts checks. It for example contains all packages of the Debian Python Modules Team (that I am a member of) and many others. We discussed and started to work on how to create robust buildbots, that can be installed as a regular Debian package with zero (if possible) configuration, so that many people can just install them without pain, thus providing a huge scalability to the project.

We wrote a preliminary patch to pbuilder for killing the build if it exceeds given memory/disk usage. I had to learn the internals of pbuilder and I lost quite some time squashing some stupid bug I caused while writing the patch.

I spent most of my time with svnbuildstat, mostly learning and discussing things. This will be important for the future, but to also have some real results, I also fixed some packages I comaintain:

Together with Kumar Appaiah we fixed the python-numpy package and I had it uploaded, then I learned how to work with quilt instead of dpatch to handle patches in Debian packages, thanks to Holger's webpage, that contains a nice tutorial. Then I switched from dpatch to quilt in python-scipy and backported a patch from upstream svn to fix a segfault bug and had the package uploaded.

Then I finished the Cython package and had it uploaded. Cython is a marvelous package to speed up Python programs and interface C/C++ programs. I greatly recommend to try. If you don't like it, you can try some of at least 10 other ways to wrap C code in Python. I also used quilt in there to backport a patch from the upstream Mercurial repository to implement parsing @classmethods. Quilt is really a pleasure to work with.

Impressions from the meeting

I've been using Debian since 2001 as my only operating system on all of my computers, so I am not a complete beginner. But it never occured to me I could get involved in Debian more than a user and an occasional bug reporter. What a mistake.

I started packaging new things and fixing packages that I need for my work and that didn't work. This got me involved quite a bit in Debian. But in M rida it was the first time I could dring a beer (well, especially wine) with Debian Developers and I found out they are really cool people. They are all very skilled. Also something, that I love about Debian, is that the people involved in it share two common features, that are very important for them - respect to democracy and personal freedom. When I think about it, those are probably the first two items on my presonal list of values.

Of course, everytime there is a group of 1000+ people, there are good and bad people, more and less skilled, but important is the overall atmosphere - and that is as I described. I think Debian is truly unique. There is Gentoo, that has maybe 40 (?) active developers. There is Ubuntu, that has maybe 100 (?) developers, but it's basically a comercial distribution and there is not so many interesting work for non employees of Canonical. There is opensuse and fedora, where I am not sure about the numbers. The atmosphere in Debian can change in the future, one never knows, but as of the end of 2007, I think it's very cool to get involved.

Maybe it's not for everyone, but it's the right place for me.

Ondřej Čertík: Merida

We spent the whole Friday hacking, Lucas will send a summary email soon. More people joined.

Ana Guerrero:


Amaya Rodrigo:


Mark Purcell:


Kilian Krause and C sar G mez Mart n


and Holger Levsen with red hair:


On Saturday we were again working and in the late afternoon we took a walk in M rida, visited the famous ancient Roman monuments. Now it's 3:30am and we will soon go to Madrid and back home.

Ondřej Čertík: M rida - remaining photo

This post is dedicated to dato (blog), whose picture I forgot to take (thanks Cyril Brulebois for taking this one).

From left to right: Gon ri Le Bouder, me, Lars Wirzenius, Holger Levsen and Adeodato "dato" Sim !

3 December 2007

Michael Prokop: git[-svn] in 30 minutes

… or something like that… I planned to write a short note about how to start with using git-svn so I can provide a pointer to some of my colleagues. It turned out that git has too many nice features that you should be aware of. :) Hopefully my notes (now being a reference for myself as well, thx to gebi for all the help and feedback) are useful anyway. If you think something (more or less essential, or at least something most of us should be aware of) is missing: please feel free to mention that in the comment section of my blog entry, thanks. Disclaimer: I’m still happy with mercurial for what I - and we at grml in general - use it: linear, but anyway distributed development. git on the other hand provides some really nice features. Rebasing and branching with git is really great - so non-linear development just works. As usual: use the right tool for the right job. git is a bit complicate to use. Not only but especially in the beginning. On the other hand I’m not such a big friend of subversion. If you wanthave to use subversion (Graz University of Technology for example provides a svn service to their students and employees) but prefer to work with git instead you should be aware of git-svn. git-svn gives you bidirectional operation between subversion and git. First of all make sure you have all you might need when working with git. Make sure to use a current version of git (I’m refering to version >=1.5.3). Just execute the following command line on your Debian system to install all relevant packages:
aptitude install \
git-buildpackage git-core git-cvs git-daemon-run \
git-doc git-email git-gui git-load-dirs git-svn \
gitk gitweb qgit
Now let’s start with some general and basic configuration:
# Remove directories from the SVN tree if there
# are no files left behind, configure it globaly:
git config --global svn.rmdir=true
# Want some more global, personal git configuration?
for line in  
  user.name=Michael Prokop 
  user.email=foo@example.invalid 
  color.diff=auto 
  color.diff.new=cyan 
  color.diff.old=magenta 
  color.diff.frag=yellow 
  color.diff.meta=green 
  color.diff.commit=normal 
do
  git config --global $line
done
Check out man git-config for much more details about configuration options. First tip: set ‘g’ as an alias for git so you don’t have to type that much. I’ll write the long version in the following examples so copy/paste works for everyone. Make sure to use the short options of git itself as well: use ‘git co’ for example instead of ‘git checkout’. You can define your own aliases inside git as well - either manually in ~/.gitconfig or running something like:
git config --global alias.st status
Enough pre-configuration for now. It’s time to checkout the SVN repository:
# Check out the SVN repository and set 'svn/' as
# prefix for the branches:
git svn clone -s --prefix=svn/ \
https://svn.tugraz.at/svn/$project foobar && 
cd foobar
# Adjust svn:ignore settings within git:
git svn show-ignore >> .git/info/exclude
# List all branches:
git branch -a
# List all remote branches:
git branch -r
# Rebase your local changes against the
# latest changes in SVN (kind of 'svn up'):
git svn rebase
# Checkout a specific branch:
git checkout $branch
Ok so far? But what do we have to do if we want to work on the upstream source and are allowed to commit/push directly to the repository? Let’s see how to work on that without using branches:
# Hack:
$EDITOR foobar
# Check status
git st[atus]
# List diff:
git diff [foobar]
# Commit it with a commit message using $EDITOR:
git commit -a
# Now commit your changes (that were committed
# previously using git) to SVN, as well as
# automatically updating your working HEAD:
git svn dcommit
But what should we do if we do not have commit rights? Let’s create our own branch and send a patch via mail to upstream:
# Make a new branch:
git checkout -b mikas_demo_patch
# and hack...
$EDITOR
# Commit all changes:
git ci -a -m 'Best patch but worst commit msg ever'
# ... and prepare patch[es]:
git format-patch -s -p -n master
# Now send mail(s) either use git-send-email:
git send-email --to foo@example.invalid *.patch
# ... or if you prefer mutt instead (short zsh syntax):
for f in *.patch ; mutt -H $f
You got a mail from someone else and would like to incorporate changes from the attached patch in your repository? Just store the mail in a seperate mailbox (use save-message in mutt for example, keybinding ’s’ by default), then execute:
# Apply a [series of] patch[es] from a mailbox
git am /path/to/mailbox
Want to work on a seperate branch and rebase your work with upstream?
# First of all make sure to use recent sources...
# So pull when using plain git:
git pull -u
# .. or when using git-svn use:
git svn rebase
# Then create a new branch:
git checkout -b mika
# Hack:
$EDITOR
# Commit:
git ci -a -m 'Best patch but worst commit msg ever'
# Switch to master branch:
git checkout master
# Pull again when using plain git:
git pull -u
# .. or when using git-svn use:
git svn rebase
# Finally switch back
git checkout mika
# Now rebase it with plain git using:
git rebase origin/master
# ... or when using git-svn:
git svn rebase
# Now check out the last 5 commits:
git log -n5
Another branch-session might look like:
git co -b foo
$EDITOR
git ci -a -m 'foo changes'
git co master
git co -b bar
$EDITOR
git ci -a -m 'bar changes''
git co foo
git rebase bar
git log -n5
git st
git branch
Pfuhhh? Right. :) Now it’s time to check out another cool feature: git stash, which is just great when pulling into a dirty tree or when suffering from interrupted workflow. Demo:
git stash
git pull / fetch+rebase
$EDITOR # fix conflicts
git commit -a -m "Fix in a hurry"
git stash apply
git stash clear # unless you want to keep the stash
git reset rocks as well:
# List all recent actions:
git reflog
# Now undo the last action:
git reset --hard HEAD@ 0 
How to get rid of branches?
# Delete a branch. The branch must be fully merged:
git branch -d remove_me_branch
# Delete a branch irrespective of its index status:
git branch -D remove_me_branch
# Delete a remote branch:
git push reponame :branch
Repack a git repository to minimize its disk usage:
git pack-refs --prune
git reflog expire --all
git repack -a -d -f -l
git prune
git rerere gc
Use git cherry to find commits not merged upstream. Another really cool feature is the interactive rebasing: git rebase –interactive Make sure you are aware of gitk: Screenshot of gitk … and don’t forget to set readable fonts for gitk, like:
[ -r ~/.gitk ]   cat > ~/.gitk << EOF
set mainfont  Arial 10 
set textfont   Courier 10 
set uifont  Arial 10 bold 
EOF
If you prefer a Qt based interface check out qgit. Useful ressources:

Next.

Previous.