Skip to content

Gedit – Zeitgeist Dash revisited

Last February during the Zeitgeist hackfest my former GSoC student Michal Hruby convinced me to hack a dash for gedit (it was for gedit 2 sadly) that looked like this…

Today based on the mockups of my previous post i rewrote it to work with the latest gedit. Its 90% working now but I am not sure about the usability to be honest, thus i need more info on how people use gedit. Right now the code is almost done and I am torn between the following 2 designs (these are actual images of my running gedit)…

If you have better suggestions please tell me! I am developing this as a plugin so everybody will be able to test it. I will upload the code soon…

Help us get some user statistics on gedit

I am working on a dashboard (start page) for gedit… My initial idea looks something like this

(the thumbnails will view some parts of the content of the file)

We are not sure that for gedit that  ”Frequent” is of interest for us, that maybe we can be happy just with Frequent… However before we take any decisions we decided to appeal to all gedit users who have been using Zeitgeist for over a month to use run the following script in a terminal via

python usage.py

and paste the results as a comment… Help us make gedit more awesome :)

Zeitgeist history retrieval script and additional loggers

Zeitgeist starts logging from the time its installed. It can not dig into the past.

However we have a workaround to retrieve the history out of a folder and inform Zeitgeist about it. Simply download the following script

then use it like this:

python history.py /path/to/folder

/path/to/folder being the folder you want to pull history out of example: /home/seif/Documents

also for those devs who love emacs or vim

please install the emacs plugin and vim plugin

Working on some visuals for the GNOME Shell Zeitgeist extensions

Now that functionally thing are looking more stable with the extensions, I took some time to improve the visuals based on feedback by the one and only Hylke Bons…

This iteration was about making the extensions look like the rest of GNOME Shell… The guideline here was the “search view”, which reduces clutter. Also the “Today” section is expanded by default

Here is a brief comparison

Before                                                                                     After

What do you think?

The code is up on github if you want to play with it https://github.com/seiflotfy/gnome-shell-zeitgeist-extension

GNOME Shell with a little Zeitgeist (Extension update)

So I finally managed to finish all Zeitgeist extensions I wanted for GNOME Shell…

Journal

The first extensions adds the “Journal” overview which allows you to navigate through your Recently Used stuff categorized by type of files (documents/videos/music/other/…) as well as type of interaction (recent/frequent/new). This is something Akshay Gupta, Federico Mena and me have been working on and we will be working on it more in the coming weeks to fix and improve the view…

Zeitgeist-Search

One of the most annoying things about the Shell search is the semi-random order of results we get for matching applications (see https://bugzilla.gnome.org/show_bug.cgi?id=623372)

Also the search in recently used could be improved by categorizing them by types (documents/videos/etc..)

Jump-lists

Last but not least I managed to finish a jump-list extension that is pretty nifty and works like charm. Basically if your application reports to Zeitgeist what it is doing (install datap sources from https://code.launchpad.net/~zeitgeist-dataproviders/zeitgeist-datasources/trunk) you will have the awesome functionality of being able to right click on an app and retrieving the 4 recent items used with it as well as other 3 frequent items used.

Where to get it?

Simple just get it from my git repo (https://github.com/seiflotfy/gnome-shell-zeitgeist-extension) by doing

git clone git://github.com/seiflotfy/gnome-shell-zeitgeist-extension.git

YOU NEED ZEITGEIST TO RUN THIS make sure that both zeitgeist-daemon and zeitgeist-datahub are running


Credits…

Thanks to Federico and Akshay for their amazing work and Jasper St. Pierre and Colin Walters for guiding me through the unconventional methods to get this running. Also thanks to Collabora for sponsoring my efforts…

Here is a video demo of the 3 extensions or download it from here

Zeitgeist extensions for GNOME Shell (update)

I managed to get around to extend my extensions and fix some minor issues… The extensions now can “search”. Not only does it allow you to search your files better and categorize them. It also overwrites the standard search of shell to sort you applications by “most launched” (thanks to jimmac’s hint). Now when i search for “ch” i get chrome first and not cheese.

The Journal overview is more or less the same. However under the “recent”, “new”, “frequent” and “shared” u can really expand anymore. You are forward to the category by clicking the “m0re” button. There is much more to come. I will be fixing bugs and adding jumplists soon.

Download the extensions from here…

Zeitgeist extensions for GNOME Shell

I started working on getting the GNOME Shell – Zeitgeist work by Federico’s GSoC student Akshay Gupta (kitallis) more stable and visually appealing. I am not a designer but I think this is not that bad… I hope I can get Hylke or Garrett to look at it with me during the week.

Currently its an extension you can get from here… (You will need to install the latest stable Zeitgeist)

Here are some screen-shots. I will be working on it more this week and expect a nice git branch with some final touches (I will be changing some functionality to be more convenient)

Zeitgeist User Survey 2011 Fall

Our very own Manish Sinha prepared a user survey that would help us refocus our development and deployment. If you have the time please fill it out. Here is the original post from him.

Hi everyone,

The Zeitgeist project has created a survey to understand and prioritize user expectations. The survey can be found here

Please spread the word. You can use Twitter, Identi.ca, Facebook, Disapora, Google+ or any social network to spread it. You can even hand it out to your friends via IM.

Manish Sinha

(On Behalf of Zeitgeist Team)

Globaleaks: prototype and demo for all

My last post about GlobaLeaks was more or less an introduction to what it is and it’s not.

As we know in the open-source world “Code Talks”. So with this in mind, the weekend following my last post we had our first hackfest/sprint near Florence. I was sponsored to go and meet some of the key figures behind the project.

When I joined the team it was mostly to work on the python logic and datamodel as well as help on the development of a community of contributors. So we started getting some “cleaner” code (still dirty) done and defining the specs all over to develop a general consensus around technical and conceptual issues at hand.

I managed to convince the guys to host the code on launchpad for reasons I will get to in another post. But gernally it was the best option to actually get code/bugs/blueprints more in sync. (https://launchpad.net/globaleaks)

The sprint helped us kickstart and develop a momentum that we have been maintaining ever since. After the hackfest the spectacular random globaleaks designers donated their time to set up a website presence and some bling bling…

Some of us were present at the ESC 2011 and presented GlobaLeaks. GlobaLeaks live launch – Venice 2011

We will follow a very agile/organic development and it is pretty hecktick until we get things shaped enough so the core hackers are satisfied. The code is easy to jump into since its python and web2py. The code is now available and is by no means out for use in production.

It is merely a concept and we want YOU to help us make it better. We don’t believe in developing such a project behind closed doors. But rather we would have hackers, journalists and others help us make it better.

We plan to have a mini sprint again the weekend from 16-18 of September in Milan. You can join or donate something to help us all meet again.

You will be able to follow the development happening in the community now on our planet (http://planet.globaleaks.org/)

SO NOW PLEASE VISIT THE WEBSITE FOR ALL THE INFO YOU NEED

THEN TRY OUT THE DEMO

On a personal note the following are fun facts from the hackfest.

  • I am 2 kg heavier (too much pasta and good food)
  • Arturo infected me with the terrible “Enter the Ninja – Die Antwoord” song
  • I decided to learn italian
  • Loving the team

Hello GlobaLeaks

While my opinion might be debatable, I think whistleblowing can help countries all over the world keep an eye out and judge the private companies and government entities that run countries. Also, the whisleblowing process (while protecting the anonymity of the whistleblower) needs to be transparent.

Up untill now there was no open-source platform to do so.

That is until I found out about GlobaLeaks, a group of young talented thinkers, hackers, journalists that are working on a safe, secure, transparent and depyloable whisleblowing platform.
I got in contact with some of them during the Jan 25 revolution. I will be working with them in my freetime, helping them build a developer community. Here is a public message they prepared for me to blog about.

Hey,

I’m writing to tell everyone about a new project that we’ve been hacking on for quite some time. We’re really excited about it and it’s called GlobaLeaks. GlobaLeaks is three things – it is first a project for creating software and for having discussion, it is secondly a collection of software for use by anyone interested in whistleblowing and it is third a collection of best practices for anyone interested in creating a whistleblowing platform.

What we have created is a Free and thus Open Source Whistleblowing platform. While the idea was born out of inspiration from the whole *leaks phenomenon it has developed to become something that focuses mainly on true whisleblowing.

During our research we discovered an incredible ecosystem of whistleblowing organizations and software to support whistleblowers and the rest of that ecosystem. There are people who have been active in this field for more than twenty years and are still active. A long term example is http://www.pcaw.co.uk/ – some of the long time whistleblowing advocates don’t even consider WikiLeaks as whistleblowing. While we believe WikiLeaks is important, we think there is much more to whistleblowing beyond the WikiLeaks model as it is currently known.

We believe in the value of a range of activities and believe that tools such as the GlobaLeaks suite of software will empower people to stand up anonymously while making a change in their local context.
The true power of GlobaLeaks is to be able to impact and enforce change on a very local level, but before I go into doing any more pitching on why GlobaLeaks is so cool let me tell you a bit more about what it is.
Basically it is a web application, running as a Tor Hidden Service (https://www.torproject.org/docs/hidden-services.html.en). The fact that it runs as a Hidden Service protects the location of the server running the software. It also adds a layer of end-to-end encryption and authentication so any client connecting does not need to rely on legacy technology such as SSL/TLS authentication.

Any person running a GlobaLeaks node is called the node maintainer. By running the node as a Hidden Service he also is not required to register any domain names or static ip address because data is being transmitted over the Tor network; because this is a hidden service, there is no concern about Exit Node sniffing – the entire connection is encrypted, authenticated and anonymized. The node maintainer is has their identity protected and they do not need to expose themselves to possible retaliation.
Usually hidden serivices are only accessible from the Tor network, but what we have developed (based on Aaaron Swartz’s Tor2web) is tor2web 2.0 that allows people coming from the normal web to visit hidden services. This means that a hidden service can reach a much wider audience.

A GlobaLeaks node is setup by somebody who has interest in motivating the citizens of that particular context into actively participating towards spotting mispractice and corruption.
Their role will be that of selecting targets responsible for analysing the material that is passed through their node. They will be knowledgable of that particular context so they will know who will be mostly interested in receiving and analysing the data. How they choose the targets is very important. The targets must be as much diversified as possible and with conflicting interests.

For example I will choose a left wing party and a right wing one, a certain labour union and also their opponent. This way their conflict of interest incentivizes targets in providing a more objective analysis of the material (e.x. some will be interested in confirming the facts whereas others will be interested in discrediting them).

A whisleblowers accesses the GL node using a Tor enabled browser to guarantee their anonymity. They upload the material and a notification is sent to the targets with a random time delay to avoid correlation attacks.

The target receives what is called a leank (leak link). This link is unique to their profile and after a certain amount of clicks it expires. They can access it either through Tor or through tor2web.
Leanks, in a later stage of development, will provide a way to have bi-directional communications (messaging) between the leaker and the targets.

The Leaker will be given a sort of Leak-Receipt-ID that allows him to come back and see the status of his submission, the list of people who downloaded it, if there are questions by targets and eventually requests for further information regarding the material.

GL will be delivered as a .exe/.app/.bin self-contained application that can be installed with just a click. The local activist will not require much training to configure and manage it.
Usability and ease of use are paramount. Target selection should be easily done even by a non technical crowd.

So this is basically it. We are currently looking for more developers interested in working on this project. Hopefully this breif description sparked your curiousity and you are interested in
knowing more.

Currently no code has been released publicly :( . What we have is a very rough prototype that we are quite ashamed of showing you. Yet the view of what globaleaks should be is very solid and are very open to suggestions and participation from all of the Open Source community.

So…
You should subscribe to our mailing list:

http://globaleaks.org/mailman/listinfo/people_globaleaks.org

You can join us on IRC:
irc.oftc.net #globaleaks

And please come and hack with us.

A Random GlobaLeaks Contributor