News aggregator

Debian Bits: skyrocketing how-can-i-help popcon count

Planet HantsLUG - Mon, 10/02/2014 - 21:00

This is a repost from Stefano Zacchiroli's post

how-can-i-help by Lucas Nussbaum is one of the best things that happened in the area of attracting contributions to Debian in quite a while. It can be used both as a standalone tool to list opportunities for contributing to Debian which are related to your installed packages, and as an APT hook (which is also the default configuration) that at each upgrade will inform you of new contribution opportunities.

how-can-i-help is great for newbies who are looking for ways to give back to Debian which are a good match for their skills: among other things, how-can-i-help shows bugs tagged "gift" related to packages you use.

how-can-i-help is also great for experienced developers, as it allows them to find out, in a timely manner, that packages they use are in dire need of help: RC bugs, pending removals, adoptions needed, requests for sponsor, etc. (As highly unscientific evidence: I've noticed a rather quick turnover of RFA/O/ITA bugs on packages installed on my machine. I suspect how-can-i-help is somehow responsible for that, due to the fact that it increases awareness of ongoing package issues directly with the people using them.)

So, if you haven't yet, please apt-get install how-can-i-help RIGHT NOW.

I daresay that we should aim at installing how-can-i-help by default on all Debian machines, but that might be an ambitious initial goal. In the meantime I'll settle for making how-can-i-help's popcon count skyrocket. As of today, it looks like this:

which is definitely too low for my taste. Please spread the word about how-can-i-help. And let's see what we can collectively do to that graph.

how-can-i-help is just a tiny teeny helper, but I'm convinced it can do wonders in liberating dormant contributions to the Debian Project.

Categories: LUG Community Blogs

Tony Whitmore: Malawi Mountain Madness – update

Planet HantsLUG - Mon, 10/02/2014 - 20:50

Later this year I am going to do something stupid. I’m going to climb Mount Mulanje, the highest mountain in southern Africa. It will take 5 days to get up and I’ll be carrying a heavy pack all the way.

People keep asking me if I’m in training. I’m not. I probably should be. What those people don’t know is that it’s not climbing the 3,002m peak that worries me. It’s the insects. I am extremely attractive to insects. Even in the UK I get bitten, a lot. When I was working on an outdoor theatre production I got bitten so much that they put it in the accident book.

I’m doing all this for AMECA, a UK charity who have built a sustainable hospital in Malawi. Adults pay for their treatment, which funds free medical care for children. Sadly there is no NHS in Malawi. So, is this just about helping people in Africa? (As if that wasn’t reason enough!) No.

The money that I’m raising pays bursaries for nurses from the UK to go to Malawi and work out there for 6 months. The nurses get valuable experience that they bring back to the UK. Everyone benefits.

I first wrote about this last summer, and I’ve had a lot of generous sponsorship from people. Only some of whom want me to suffer whilst I’m doing the climb. Some generous people donated anonymously, so I can’t thank them in person. But thank you. Thank you so so much to everyone who has helped. I really do appreciate it.

I’ve only got 4 months to reach my fundraising target of £2,550. If you can help out, the link is right here:

Please donate on my Virgin Money page

All the money goes straight to AMECA. Thank you.

Pin It
Categories: LUG Community Blogs

Steve Kemp: Sad times

Planet HantsLUG - Mon, 10/02/2014 - 14:09

There are times when I'm very proud of the Debian project, the developers, the contributors, the bug-reporters, even the users.

There are times when I'm less impressed.

These days I guess I'm not qualified to comment, being an ex-developer, but I still am disappointed.

Part of me wants to rejoin the project, to see if I can help. The other part is thinking there are other choices, maybe I should look at them.

Conflict is bad.

Being conflicted is worse.

Categories: LUG Community Blogs

Mick Morgan: compare and contrast

Planet ALUG - Sat, 08/02/2014 - 17:34

Foreign Secretary William Hague is apparently concerned about press restrictions in Egypt. He has reportedly urged the interim Egyptian government to demonstrate commitment to free expression.

The press release on the gov.uk website says:

Speaking today about increasing restrictions placed upon journalists and the media in Egypt, Foreign Secretary William Hague said:

  • “I am very concerned by restrictions on freedom of the press in Egypt, including reports of the recent charging of Al Jazeera journalists, two of whom are British, Sue Turton and Dominic Kane.
  • “We have raised our concerns about these cases and freedom of expression at a senior level with the Egyptian government in recent days. I will discuss these concerns with other European Foreign Ministers at the European Foreign Affairs Council on Monday, and we will continue to monitor the situation of the journalists very closely, and raise them with the Egyptian authorities.
  • “The UK believes a free and robust press is the bedrock of democracy. I urge the Egyptian interim government to demonstrate its commitment to an inclusive political process which allows for full freedom of expression and for journalists to operate without the fear of persecution.”

So, the UK Government believes that a “free and robust press is the bedrock of democracy”.

I agree.

Last weekend’s Guardian newspaper reported on the visits they had from and the conversations they had with Cabinet Secretary, Sir Jeremy Heywood and colleagues back in June and July of last year when the Snowden revelations were just starting to cause some ripples.

That article says:

In two tense meetings last June and July the cabinet secretary, Jeremy Heywood, explicitly warned the Guardian’s editor, Alan Rusbridger, to return the Snowden documents.

Heywood, sent personally by David Cameron, told the editor to stop publishing articles based on leaked material from American’s National Security Agency and GCHQ. At one point Heywood said: “We can do this nicely or we can go to law”. He added: “A lot of people in government think you should be closed down.”

It goes on:

Days later Oliver Robbins, the prime minister’s deputy national security adviser, renewed the threat of legal action. “If you won’t return it [the Snowden material] we will have to talk to ‘other people’ this evening.” Asked if Downing Street really intended to close down the Guardian if it did not comply, Robbins confirmed: “I’m saying this.”

Perhaps Hague should have a word with Cameron. They really need to be more consistent. If freedom of expression is vital in Egypt, I submit it is equally vital in the UK.

Categories: LUG Community Blogs

Surrey LUG Bring-A-Box 8th February 2014

Surrey LUG - Sat, 08/02/2014 - 16:28
Start: 2014-02-08 11:00 End: 2014-02-08 16:45

 

 

Latest news on road floods. --

All roads approaching the Sailing club are flooded and closed.  I drove through Shepperton on Laleham Rd approaching from the North. the Littleton Lane Is  marked as Road Closed but  the ffloodis spilling off he road  and it is passable with care.

  • Renfree Way  closed at  10:16am  about 30cm  I saw a transit van pass through,  but authorities have closed it.
  • Littleton Lane just north of sailing club  Road closed.  10:30   Water is washing over the road and spilling over the curb.  I saw a Mini  and Golf  pass through.
  • Chertsey Bridge Road  Road closed with Police  attendance IIat  10:37   saw a Land Rover pass through.
  • 9 SLUGer's managed to wade through the floods,  and are at the meeting today.
  • Sorry for any one who was not able to make it to the meeting.  Hopefully the weather will be more compliant next time. 
   

This month's meeting is at  -  Littleton Sailing Club - Shepperton.

Donations are requested to cover the cost of rental, heating and power.

We have a TRIAL of a new venue.  Please read the venue page, to see restrictions on the automated gate at this venue. Please arrive promptly,  or book your gate opening time via the maillist.

We have regular sessions on the second Saturday of each month. Bring a 'box', bring a notebook, bring anything that might run Linux, or just bring yourself and enjoy socialising/learning/teaching or simply chilling out!

New members are very welcome. We're not a cliquey bunch, so you won't feel out of place! Usually between 15 and 30 people come along.

Categories: LUG Community Blogs

Adam Trickett: Picasa Web: Yorkshire

Planet HantsLUG - Sat, 08/02/2014 - 15:24
Date: 8 Feb 2014
Number of Photos in Album: 4

View Album

Categories: LUG Community Blogs

Jono Bacon: An Exciting Future

Planet WolvesLUG - Fri, 07/02/2014 - 19:53

We are growing a world-class community and app developer eco-system, fuelled by Open Source and open collaboration. We are putting the core pieces in place and I am delighted to be working with such a wonderful team:

(L-R) Daniel Holbach, Kyle Nitzsche, Michael Hall, This Guy, Nicholas Skaggs, Alan Pope, David Planella

Categories: LUG Community Blogs

Aq: Follow-the-pointer mini screencast Python app for Ubuntu

Planet WolvesLUG - Fri, 07/02/2014 - 19:10

I had this idea for a “screencast” which follows the mouse pointer around, rather than making you nominate a fixed screen area; ideal for little demo animated GIFs of how to do a thing on websites. No existing screencast app seems to do this, so I threw a quick thing together to do it for me. Python (because that’s what I use for native apps that can’t be done in pure QML) and Gtk (because there’s no point in using Qt for this since the Python bindings are weird, I use Qt/QML for Ubuntu SDK apps but this can’t be done there anyway because the phone is Mir rather than X and app confinement will prevent screenshots anyway).

Lots of hardcoded things, so it’s not a proper useful app, but it works for what I needed it for. Note that it contains a hardcoded mouse pointer image, because getting the mouse pointer image is insane and requires you to talk directly to X, which is possible with Python but needs loads of extra libraries, and look life’s just too short what are you thinking. Also uses modern Gdk and GI, not pygtk which is ancient and yet what all the existing posted code samples are. Probably should use Cairo from GI too but cairo.CONTENT_COLOR doesn’t seem to exist there. Anyway, if you need to take screenshots from Python using modern Gtk, or you want to do a little animated gif screencast which follows the mouse around, here you go.

import time from gi.repository import Gdk import cairo from PIL import Image from PIL.GifImagePlugin import getheader, getdata import StringIO CURSOR = """iVBORw0KGgoAAAANSUhEUgAAAA0AAAAUCAYAAABWMrcvAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3gIHETMhphEADwAAAfJJREFUOMuVkztvE1EQhb+b9cq+ 3s2CIU7hH+GOxpWxoOIhOR1UaTBUQEmFIA1C1BTUceWCyp1Lp7HcpCFVIgpLK0XRyo4Uy3cfuUOz tlDMIxlpym/OvXPmAHwCfGCDG5S4rvsNuHsTUKrVauw4zlfgznVBOT4+lkqlkiilvgC3rwOKtVaO jo4kCIJEKfURuPU/UNI0FUAODw/F9/0EeAcE/wJlsViItVYAGY1GUi6XE+AtsAmoP0IXFxcrNUCG w+ESfJXbsQbKbDYTY8wKAmQwGIjWOgZ2Ae8qKFEUrakB0u/3RWttgGdXQTk9PZXz8/M1NUB6vZ5o rRdAG9BLUMIw/KsaIPv7+1ZrPQceASUFyGQyoVgsrtp1Xer1uj05OZHlc+I4dpRSU2vt4w2ALMvI sowwDOl2u4gInU5HOY4zMca8Mcbsishza+0LYLE6o/F4LLVaLfE8Lz07O5P5fC5BECTAS6CWX0kA aAf4sLOzQ7vdTqMoGiilFq7rbrdaLZWmqRqPx9tpmvaACDBABiBbW1tJoVD4DjwEnvq+H0dRJNPp dGnyk3xzq7KO43SB+3mmNj3PO9jb27vMskwajYYBPuexWfn0Hrj3W5YcoFUqlUyz2TTlcnkOvAYq S0jln7vMt2LzQSXgQd4/gCHwE4gBfgH0ew11MKHjYAAAAABJRU5ErkJggg==""" def shot(width, height): # Take a screenshot t = time.time() w=Gdk.get_default_root_window() _, mousex, mousey, _ = w.get_pointer() s=Gdk.Window.create_similar_surface(w, cairo.CONTENT_COLOR, width, height) ctx=cairo.Context(s) Gdk.cairo_set_source_window(ctx,w,-mousex + (width/2),-mousey + (height/2)) ctx.paint() return (t, s) SECONDS_DURATION = 3 WIDTH = 300 HEIGHT = 150 FPS = 25 surfaces = [] start = time.time() last = time.time() while (time.time() - start) SECONDS_DURATION: while (time.time() - last) (1.0/FPS): time.sleep(0.01) last = time.time() surfaces.append(shot(WIDTH,HEIGHT)) # now, convert each surface to a PIL PNG then write as a gif buffer = StringIO.StringIO() buffer.write(CURSOR.decode("base64")) buffer.seek(0) cursor_image = Image.open(buffer) fp = open("anim.gif", "wb") previous = None for t, surface in surfaces: sio = StringIO.StringIO() surface.write_to_png(sio) sio.seek(0) im = Image.open(sio) im.paste(cursor_image, (WIDTH/2, HEIGHT/2), mask=cursor_image) im = im.convert('RGB').convert('P', palette=Image.WEB) del surface # Fixme: add specific delay (from t) for each frame, and add looping if not previous: for s in getheader(im) + getdata(im): fp.write(s) else: for s in getdata(im): fp.write(s) previous = im.copy() fp.close() print "Now optimise with gifsicle -b -O3 anim.gif"
Categories: LUG Community Blogs

Aq: Follow-the-pointer mini screencast Python app for Ubuntu

Planet WolvesLUG - Fri, 07/02/2014 - 19:10

I had this idea for a “screencast” which follows the mouse pointer around, rather than making you nominate a fixed screen area; ideal for little demo animated GIFs of how to do a thing on websites. No existing screencast app seems to do this, so I threw a quick thing together to do it for me. Python (because that’s what I use for native apps that can’t be done in pure QML) and Gtk (because there’s no point in using Qt for this since the Python bindings are weird, I use Qt/QML for Ubuntu SDK apps but this can’t be done there anyway because the phone is Mir rather than X and app confinement will prevent screenshots anyway).

Lots of hardcoded things, so it’s not a proper useful app, but it works for what I needed it for. Note that it contains a hardcoded mouse pointer image, because getting the mouse pointer image is insane and requires you to talk directly to X, which is possible with Python but needs loads of extra libraries, and look life’s just too short what are you thinking. Also uses modern Gdk and GI, not pygtk which is ancient and yet what all the existing posted code samples are. Probably should use Cairo from GI too but cairo.CONTENT_COLOR doesn’t seem to exist there. Anyway, if you need to take screenshots from Python using modern Gtk, or you want to do a little animated gif screencast which follows the mouse around, here you go.

import time from gi.repository import Gdk import cairo from PIL import Image from PIL.GifImagePlugin import getheader, getdata import StringIO CURSOR = """iVBORw0KGgoAAAANSUhEUgAAAA0AAAAUCAYAAABWMrcvAAAABmJLR0QA/wD/AP+gvaeTAAAACXBI WXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3gIHETMhphEADwAAAfJJREFUOMuVkztvE1EQhb+b9cq+ 3s2CIU7hH+GOxpWxoOIhOR1UaTBUQEmFIA1C1BTUceWCyp1Lp7HcpCFVIgpLK0XRyo4Uy3cfuUOz tlDMIxlpym/OvXPmAHwCfGCDG5S4rvsNuHsTUKrVauw4zlfgznVBOT4+lkqlkiilvgC3rwOKtVaO jo4kCIJEKfURuPU/UNI0FUAODw/F9/0EeAcE/wJlsViItVYAGY1GUi6XE+AtsAmoP0IXFxcrNUCG w+ESfJXbsQbKbDYTY8wKAmQwGIjWOgZ2Ae8qKFEUrakB0u/3RWttgGdXQTk9PZXz8/M1NUB6vZ5o rRdAG9BLUMIw/KsaIPv7+1ZrPQceASUFyGQyoVgsrtp1Xer1uj05OZHlc+I4dpRSU2vt4w2ALMvI sowwDOl2u4gInU5HOY4zMca8Mcbsishza+0LYLE6o/F4LLVaLfE8Lz07O5P5fC5BECTAS6CWX0kA aAf4sLOzQ7vdTqMoGiilFq7rbrdaLZWmqRqPx9tpmvaACDBABiBbW1tJoVD4DjwEnvq+H0dRJNPp dGnyk3xzq7KO43SB+3mmNj3PO9jb27vMskwajYYBPuexWfn0Hrj3W5YcoFUqlUyz2TTlcnkOvAYq S0jln7vMt2LzQSXgQd4/gCHwE4gBfgH0ew11MKHjYAAAAABJRU5ErkJggg==""" def shot(width, height): # Take a screenshot t = time.time() w=Gdk.get_default_root_window() _, mousex, mousey, _ = w.get_pointer() s=Gdk.Window.create_similar_surface(w, cairo.CONTENT_COLOR, width, height) ctx=cairo.Context(s) Gdk.cairo_set_source_window(ctx,w,-mousex + (width/2),-mousey + (height/2)) ctx.paint() return (t, s) SECONDS_DURATION = 3 WIDTH = 300 HEIGHT = 150 FPS = 25 surfaces = [] start = time.time() last = time.time() while (time.time() - start) < SECONDS_DURATION: while (time.time() - last) < (1.0/FPS): time.sleep(0.01) last = time.time() surfaces.append(shot(WIDTH,HEIGHT)) # now, convert each surface to a PIL PNG then write as a gif buffer = StringIO.StringIO() buffer.write(CURSOR.decode("base64")) buffer.seek(0) cursor_image = Image.open(buffer) fp = open("anim.gif", "wb") previous = None for t, surface in surfaces: sio = StringIO.StringIO() surface.write_to_png(sio) sio.seek(0) im = Image.open(sio) im.paste(cursor_image, (WIDTH/2, HEIGHT/2), mask=cursor_image) im = im.convert('RGB').convert('P', palette=Image.WEB) del surface # Fixme: add specific delay (from t) for each frame, and add looping if not previous: for s in getheader(im) + getdata(im): fp.write(s) else: for s in getdata(im): fp.write(s) previous = im.copy() fp.close() print "Now optimise with gifsicle -b -O3 anim.gif"
Categories: LUG Community Blogs

Adam Bower (quinophex): I finally managed to beat my nemesis!

Planet ALUG - Thu, 06/02/2014 - 23:40
I purchased this book http://www.amazon.co.uk/dp/0738206679 (Linked, by Barabasi) on the 24th of December 2002, I had managed to make 6 or 7 aborted attempts at reading it to completion where life had suddenly got busy and just took over. This meant that I put the book down and didn't pick it up again until things were less hectic some time later and I started again.

Anyhow, I finally beat the book a few nights ago, my comprehension of it was pretty low anyhow but at least it is done. Just shows I need to read lots more given how little went in.

comments
Categories: LUG Community Blogs
Syndicate content