Enterprise Social Search is a way to search, manage, and share information within a company. Who can help you find relevant information and nothing but relevant information? Your colleagues, of course
I’ve been working wit git lately but I have also missed the darcs user interface. I honestly think the darcs user interface is the best I’ve ever seen, it’s such a joy to record/push/pull (when darcs doesn’t eat your cpu) 🙂
I looked at
git add --interactive because it had hunk-based commit, a pre-requisite for
darcs record-style commit, but it has a terrible user interface, so i just copied the concept: running a
git diff, filtering hunks, and then outputing the filtered diff through
git apply --cached.
It supports binary diffs, file additions and removal. It also asks for new files to be added even if this is not exactly how darcs behave but I always forget to add new files, so I added it. It will probably break on some extreme corner cases I haven’t been confronted to, but I gladly accept any patches 🙂
Here’s a sample session of
$ git-darcs-record Add file: newfile.txt Shall I add this file? (1/1) [Ynda] : y Binary file changed: document.pdf Shall I record this change? (1/7) [Ynda] : y foobar.txt @@ -1,3 +1,5 @@ line1 line2 +line3 line4 +line5 Shall I record this change? (2/7) [Ynda] : y git-darcs-record @@ -1,17 +1,5 @@ #!/usr/bin/env python -# git-darcs-record, emulate "darcs record" interface on top of a git repository -# -# Usage: -# git-darcs-record first asks for any new file (previously -# untracked) to be added to the index. -# git-darcs-record then asks for each hunk to be recorded in -# the next commit. File deletion and binary blobs are supported -# git-darcs-record finally asks for a small commit message and -# executes the 'git commit' command with the newly created -# changeset in the index - - # Copyright (C) 2007 Raphaël Slinckx # # This program is free software; you can redistribute it and/or Shall I record this change? (3/7) [Ynda] : y git-darcs-record @@ -28,6 +16,19 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# git-darcs-record, emulate "darcs record" interface on top of a git repository +# +# Usage: +# git-darcs-record first asks for any new file (previously +# untracked) to be added to the index. +# git-darcs-record then asks for each hunk to be recorded in +# the next commit. File deletion and binary blobs are supported +# git-darcs-record finally asks for a small commit message and +# executes the 'git commit' command with the newly created +# changeset in the index + + + import re, pprint, sys, os BINARY = re.compile("GIT binary patch") Shall I record this change? (4/7) [Ynda] : n git-darcs-record @@ -151,16 +152,6 @@ def read_answer(question, allowed_responses=["Y", "n", "d", "a"]): return resp -def setup_git_dir(): - global GIT_DIR - GIT_DIR = os.getcwd() - while not os.path.exists(os.path.join(GIT_DIR, ".git")): - GIT_DIR = os.path.dirname(GIT_DIR) - if GIT_DIR == "/": - return False - os.chdir(GIT_DIR) - return True - def git_get_untracked_files(): Shall I record this change? (5/7) [Ynda] : y # On branch master # Changes to be committed: # (use "git reset HEAD file..." to unstage) # # modified: document.pdf # modified: foobar.txt # modified: git-darcs-record # new file: newfile.txt # # Changed but not updated: # (use "git add file file..." to update what will be committed) # # modified: git-darcs-record # What is the patch name? Some cute patch name Created commit a08f34e: Some cute patch name 4 files changed, 3 insertions(+), 29 deletions(-) create mode 100644 newfile.txt
Get the script here: git-darcs-record script and put in somewhere in your $PATH. Any comments or improvements is welcome !
Here’s what it looks like:
The right-hand panel contains a number of megaphone applet instances, one for each contact I often talk to. If I click on the avatar (or the generic contact icon) it creates a text chat. The beauty of Telepathy is that the text chat will be handled by my favorite text chatting application, in this case Empathy itself, but it could be konqueror or whatever other program capable of handling text chats.
The first time the applet is added, you can choose a contact to be displayed. The contact chooser re-uses the empathy contact list as found in libempathy-gtk. Simply find your contact in the list, click ok and you’re set.
The applet also offers an ‘Information’ dialog, taken again from libempathy-gtk that allows you to view and edit the contact vcard, and edit the groups to which it belongs.
And amazingly, the applet only has 570 lines of C code and that includes the gobject and applet boilerplate…
In completely unrelated and old news, we got our traditional gourmet restaurant with vincent, xavier and cédric at Birmingham. Delightful!
Vincent certainly seems to enjoy the moment !
As of friday, I shall be referred to as “Ir. Raphael Slinckx” 🙂
The 2007 promotion (I’m the guy with the red jacket). Note the geeks. Especially our teacher that looks like Clint Eastwood ready to shoot someone.
Antoine and me with the AILv price. We ended in 4th position for the best mémoire that can lead to a business.
Today was election day in Belgium!
It turns out that my area uses the electronic voting, unfortunately
I can only hope that WYSIWYV !
Summer of Code
I’m mentoring two students this year for the google summer of code:
Daniel is going to implement some kind of photobooth application for GNOME. There has been some buzz around the idea lately. I believe that the idea if done well could really be a mini-killer-application. There is also some integration work to be done. Two ideas were discussed in the proposal: gnome-about-me could popup the photobooth widget to take a picture of you. Same for any IM client to setup an avatar. This is just how Mac Osx does the job. Another idea would be flickr/youtube integration, the ability to directly post a photo/video to those websites from the application. More ideas discussed in the google soc proposal.
Sebastian has been contributing to deskbar already. He is also the creator of the NewStuffManager started in deskbar now growing as a standalone project gaining more and more traction. Now his task for this summer is a difficult one. Deskbar has grown organically the last year to a point where it becomes difficult to add any feature or correct the long standing bugs because of architectural problems. The issues are well known and have been discussed on IRC or the live.gnome.org wiki page. The refactoring work should land in 2.20 so we can start on a fresh basis. Ideas that are discussed include the ability to embed the deskbar entry widget in other applications like gimmie, or allow to query deskbar via dbus without using the UI. Startup times and memory usage are also priorities.
I promised to release the code for my photobooth-like application, which Daniel is going to use as inspiration as well. There you are:
I do not plan to maintain this piece of code, since other people will make it evolve better than me !
This wednesday our local louvain-la-neuve LUG (louvain-li-nux) will participate to a student fair showcasing all activity groups present in the university. We had the idea of creating a photo booth stand where people can stop by take a picture by pressing a button and then send that picture on a dynamic website or on a big projector live. All this using free software of course. It’s a good way to engage conversation with people!
I searched the internet for something existing but unfortunately couldn’t find anything except this little snippet of code for the Nokia 880 device. I took the code, embraced and extended it resulting in:
Basically it uses gstreamer to grab frames from the webcam then it feeds a double pipeline, one displaying the image on screen on the gtk widget, and the other allowing to take a buffer when the user clicks the button and encode it to whatever image format is needed.
There is of course the little countdown from 3 to ‘Smile’ when clicking the button, and i plan to add the white screen thingy when the shot is made.. I think apple can sue me right away
The code will be released next week after the application has been proved in the field to be stable enough 🙂
Gossip has now video/audio capabilities !
Coming soon in your favorite distribution. Notes:
- In reality I’m handsome, the weird face is due to the camera’s angle
- The black square is actually the video preview frame where you see yourself (but it can’t be screenshotted)
- The meters aren’t working yet
- If no video is possible, then only the button+status and the meters are shown in the window
- All this is powered by Telepathy and the telepathy branch of Gossip
- I’m not alone on this stuff, many thanks to Xavier Claessens and Eitan Isaacson for maintaining the telepathy branch!
- This stuff is experimental, blabla, and also it’s not a final design, it’s open for discussion, etc
- Come and help/discuss on
#telepathyon Freenode or
You can get the code using
darcs get http://www.gnome.org/~rslinckx/darcs/gossip-telepathy-voip
Merry Christmas and Hapy New Year !
Hmmm food. They tried to kill us at google with a huge amount of great food. Fortunately all of us survived.
Our two hackers extraordinaire. The handsome Christian and the stupid Danilo. Or is it the other way around ?
I have some pictures of Mirco Müller which could be suitable for a new hackergotchi as he requested. If anyone wants to steal one one those and make him a great hackergotchi he will be very pleased !
I will leave the pictures for a month or so in this folder.