news aggregator

Stuart Langridge: Writing a simple desktop widget for Ubuntu

Planet Ubuntu - Mon, 2014-03-03 00:47

I needed a way to display the contents of an HTML file on my desktop, in such a way that it looks like it’s part of the wallpaper. Fortunately, most of the answer was in How can I make my own custom desktop widgets? on Ask Ubuntu, along with Create a Gtk Window insensitive to Show Desktop and Won’t show in Launcher. Combining that with the excellent Python GI API Reference which contains everything and which I can never find when I go looking for it, I came up with a simple little Python app. I have it monitoring the HTML file which it displays for changes; when that file changes, I refresh the widget.

from gi.repository import WebKit, Gtk, Gdk, Gio import signal, os class MainWin(Gtk.Window): def __init__(self): Gtk.Window.__init__(self, skip_pager_hint=True, skip_taskbar_hint=True) self.set_wmclass("sildesktopwidget","sildesktopwidget") self.set_type_hint(Gdk.WindowTypeHint.DOCK) self.set_size_request(600,400) self.set_keep_below(True) # transparency screen = self.get_screen() rgba = screen.get_rgba_visual() self.set_visual(rgba) self.override_background_color(Gtk.StateFlags.NORMAL, Gdk.RGBA(0,0,0,0)) self.view = WebKit.WebView() self.view.set_transparent(True) self.view.override_background_color(Gtk.StateFlags.NORMAL, Gdk.RGBA(0,0,0,0)) self.view.props.settings.props.enable_default_context_menu = False self.view.load_uri("file://path/to/html/file") box = Gtk.Box() self.add(box) box.pack_start(self.view, True, True, 0) self.set_decorated(False) self.connect("destroy", lambda q: Gtk.main_quit()) self.show_all() self.move(100,100) def file_changed(monitor, file, unknown, event): mainwin.view.reload() if __name__ == '__main__': # the HTML file needs to have background colour rgba(0,0,0,0) gio_file = Gio.File.new_for_path("/path/to/html/file") monitor = gio_file.monitor_file(Gio.FileMonitorFlags.NONE, None) monitor.connect("changed", file_changed) mainwin = MainWin() signal.signal(signal.SIGINT, signal.SIG_DFL) # make ^c work Gtk.main()

Lots of little tricks in there: the widget acts as a widget (that is: it stays glued to the desktop, and doesn’t vanish when you Show Desktop) because of the Gdk.WindowTypeHint.DOCK, skip_pager_hint=True, skip_taskbar_hint=True, and set_keep_below(True) parts; it’s transparent because the HTML file sets its background colour to rgba(0,0,0,0) with CSS and then we use override_background_color to make that actually be transparent; the window has no decorations because of set_decorated(False). Then I just add it to Startup Applications and we’re done.

Ubuntu Classroom: Ubuntu Documentation Day wrap-up

Planet Ubuntu - Sun, 2014-03-02 23:20

Interested in getting involved with documentation for Ubuntu, but not sure where to begin?

This weekend the Ubuntu Documentation and Ubuntu Manual teams got together to offer 5.5 hours of documentation-related sessions in Ubuntu Classroom.

In case you missed out, the logs from the sessions are now available:

Also thanks to classroom helper Jose Antonio Rey who was available to help instructors throughout this event.


Paul Tagliamonte: Crazy experimental idea: Take sundays off

Planet Ubuntu - Sun, 2014-03-02 21:16

I’ve slowly come to the conclusion that I should likely not work as much as I do. Looking back over my GitHub graphs, and feeling my own internal pressure to do more work is getting to the point of insanity. I can’t remember the last time I took a whole day off.

As a result, I’m going to make a new rule for myself, and put it in a semi-public place to help with peer-pressure enforcing this.

I’m not going to use my computer (except in vary rare and urgent circumstances) on Sundays, from here on out. The exact rules are still up in the air (Is the Phone OK? Tablet?)

Let’s see how this goes! I’ll start next week (or just stop doing things today)

Daniel Pocock: Google Summer of Code opportunities in JavaScript, HTML5, jQuery and WebRTC

Planet Ubuntu - Sun, 2014-03-02 12:07

WebRTC is one of the highlights of HTML5. The latest stable releases of Google Chrome (including the free Chromium browser) and Firefox include support for this technology and although the specifications are still being finalized, this is the time when developers can start preparing the first generation of web-apps that will define the future of this technology.

The JSCommunicator project aims to make it easy to integrate WebRTC into existing web applications.

It provides a high-level API on top of the popular JsSIP SIP stack for JavaScript. The JSCommunicator API provides basic dialing and call control features, allowing you to focus on the application level rather than the SIP level. The configuration file suggests many possible ways it can be deployed and customized without any coding at all.

The popular DruCall module for the Drupal CMS provides a practical demonstration of how JSCommunicator can be embedded in other products, multiplying the power of WebRTC for millions of other web developers, bloggers, online shops and other sites. This part of the DruCall source code provides a practical demonstration of how JSCommunicator integrates with PHP and this demonstrates how we extract the parameters from PHP in the JavaScript and convert them to the JSCommunicator configuration object.

Practical deployments of WebRTC today

The student selected for this GSoC project will focus on two practical, real-world deployments of JSCommunicator:

It is particularly important to think about ways to make this technology useful for the Debian Developer community in the pursuit of Debian's work.

Not just for Debian

A communication product is not much use if there is nobody to talk to.

The optimal outcome of this project may involve helping two or three additional free software communities to build portals similar to https://rtc.debian.org so that they can interact with Debian and each other using Federated SIP. As Metcalfe's Law explains, this outcome would be a win-win situation for everybody.

Mentors needed too

The more diverse the mentoring community, the more positive outcomes we can achieve with this project.

If you would like to be part of a mentoring team for this project, please email me and subscribe to the Debian SOC co-ordination email list. There is no strict requirement for all mentors in the team to be full Debian Developers and emerging technology like this clearly needs people with strengths in a range of different areas.

Get started now

For general ideas about getting selected for Google Summer of Code, please see the comments at the bottom of my earlier blog post about Ganglia projects

For this project in WebRTC in particular, please:

  • Review the project brief on the Debian wiki
  • Discuss your ideas on the JsSIP Google group
  • Send an email to introduce yourself on the Debian SOC co-ordination email list and give a link to your post on the JsSIP list
  • You must complete a coding test. Please see the open bug list for JSCommunicator, complete one of these tasks and submit a pull request on Github. Please send an email to the JsSIP Google group to discuss your pull request.
  • Explain what features you would create during the summer
  • Explain which other tools or libraries you would like to use
  • Give examples of previous work you have done with HTML and JavaScript
  • Explain how your participation will benefit Debian, free software and the wider world. Give some practical examples.
  • If you are interested in other JavaScript and jQuery opportunities for GSoC 2014, please also read more about the web components in the Ganglia project - if you apply for both Debian and Ganglia, you only have to complete one coding test as part of your application.

Aurélien Gâteau: Dependency diagrams on api.kde.org!

Planet Ubuntu - Sat, 2014-03-01 21:40

Today I am happy to announce that after a bit of work we finally got dependency diagrams for KDE Frameworks 5 automatically generated on api.kde.org. Pick a framework, then click on the "Dependencies" link in the sidebar. For example, a tier 2 framework like KAuth, a tier 3 one like KIconThemes or if your looking for something a bit crazier, here is KIO.

Getting this to work was a bit more involved than I originally thought because the first part of the diagram generation is done by running cmake --graphviz on the source code. This means it must be run on a system with all the necessary dependencies installed. We ended up having the build servers run this part and rsync'ing the result to the server responsible for running Doxygen.

If you are interested in how it works, the code is available in the kapidox repository. Feel free to ping me if you need help with it.

I am still debating whether it makes sense to host the "mother of all diagrams" on api.kde.org or not. My gut feeling tells me that while it's impressive, it is of limited value and this is only going to get worse as we add new frameworks (the linked diagram is already outdated). It would probably be more interesting to produce a readable diagram of all tier 1 and tier 2 frameworks instead. I experimented a bit with this, but I am not done yet: I need to find a way to get more vertical spaces between cluster graphs. Right now the result is not useful because the arrows are all stuck together, even without Qt libs.

Ubuntu GNOME: Marketing & Communications Report – Feb 14

Planet Ubuntu - Sat, 2014-03-01 18:11

February 2014 Report

Every month, Ubuntu GNOME Marketing & Communications Team creates a monthly report and share it with the community. We decided, starting from 2014 to publish our reports on our website as well.

To view the report of January 2014, please click here.

Our Social Media Channels are still growing and we’re having more subscribers, as always.

We’re looking forward to provide the best information on our Social Media Channels, as always. Team Updates, System Updates, etc. We’re doing our best to keep everyone in the loop.

If you have any feedback, please don’t hesitate to contact us.

If you feel you can help with our Social Media Channels, kindly have a read at our basic requirements to become a moderator.

Thank you for choosing and using Ubuntu GNOME and thanks for joining our Social Media Channels. We ask to spread the word of Ubuntu GNOME. We highly appreciate if you invite your friends, cycles and/or followers to our channels.

Enjoy Ubuntu GNOME!

Stuart Langridge: I bought a new computer

Planet Ubuntu - Sat, 2014-03-01 13:49

In the most recent episode of Bad Voltage I reviewed my new computer, but we diverged mainly into a discussion of why anyone should buy laptops at all, in which I was right and everyone else in the world was wrong. Anyway, I’ve been promising for a while that I’d talk about my lovely new machine once I had it, and I now have it. So, a review.

A few months ago, my laptop, a Lenovo ultrabook running Ubuntu, decided to corrupt its disk when resuming from suspend. Now, admittedly, I’d suspended it and then let it run out of battery, and I’d understand it if it’d lost my session. But, no, it wouldn’t boot at all. A few panicked hours later, and with quite a bit of help from the #ubuntu-uk IRC channel, I got it back and I hadn’t lost anything. However, tragically, this now meant that my formerly innocent SSD1 had learned about the existence of disk errors. If you’ve worked in an office you’ll know that you mustn’t use whiteboard cleaner, because once you’ve taught a whiteboard that special cleaning fluid exists, it sulks and refuses to be cleaned without it for ever more. Well, disks are just the same: once they’ve learned that they’re allowed to error and you’ll just fix it, they feel able — actually, they feel obliged — to throw more errors just to see how much you’ll put up with. So I started shopping around for a new laptop.

Over Christmas, my mum, who is lovely but is about as good with technology as I am with blindfolded rock climbing, said: why are you buying a laptop? Why not buy a desktop computer?

This is a better question than you might initially think.

What benefit is there to a laptop? Well, there are I think two things. The first is that it has a zillion peripherals built in. Speakers, mouse, webcam, keyboard, it’s all part of the one package. And the second is that you can use it without it being plugged in, in coffee shops and conferences and on the sofa and the like.2 Other than that, every single thing about a desktop computer is better. It’s more upgradeable. It’s cheaper. It’s prettier, if you try and buy prettiness rather than a ghastly beige case from the 1980s. It’s got more USB ports. And you can make one which works how you want it to rather than how your laptop manufacturer wants it to. I want loads of RAM and a gorgeous case and I couldn’t give a damn about graphics, as long as it can drive my 27 inch monitor. So that’s what I built.

There are quite a lot of custom PC builders. There’s no way on God’s green earth that I’m going to buy a bunch of components and fit them together myself. For a start, I don’t give a crap about which type of RAM fits in which motherboard — I want someone else to decide that for me. I don’t want to have to touch a radiator and wear an anti-static strip and lose all those tiny screws every nine seconds. So I shopped around a bit and ended up with PC Specialist, a custom PC builder here in the UK. I got an Inwin 904 case, which is stone cold gorgeous — tempered glass, brushed steel. It’s a bloody work of art is what it is. And all the RAM I can stuff in my pockets, and decent Logitech speakers and webcam and wireless mouse and keyboard and an Asus 27 inch monitor and HDMI and just everything I wanted, and it was pretty well priced… and I can stick with it almost forever. Remember Trigger’s broom in Only Fools and Horses? It’d had 16 new heads and 14 new handles. This machine can be poked and have bits swapped out and keep on trucking long after any five laptops have been consigned to the laptop graveyard in your basement or the slow death of being given to your parents. So well done PC Specialist.

My requirements look roughly like this:

  1. machine will run Ubuntu, not Windows
  2. it’s not for gaming (I use my PS3 for that, and don’t use it much), so the integrated graphics is fine; I do not need a separate graphics card.
  3. I want my box to be attractive. This takes precedence over almost every other requirement, and is obviously massively subjective.
  4. I want a huge amount of RAM. Two years ago I bought the ultrabook laptop I’m typing this on, which has 4GB of RAM, and I thought that was loads. It’s now struggling a bit. I do not want to have to buy more memory a year from now, and Ubuntu is pretty heavy on RAM use, especially since I have about a zillion Chrome tabs open. So, 16GB for me. This will be sufficient for whatever Ubuntu requires for a couple of years at least, and will let me spin up VMs to my heart’s content. I did think about 32GB, but it’s just extra memory I don’t need, and because I have a desktop machine I can easily upgrade later if I need that, and not having it saves me a hundred notes or so now.
  5. I’d like a decent (that is: better than 1920 HD) monitor. However, 4K monitors are three grand each, which is way too much. So, 2560x1440 if I can. Note that the integrated graphics I pick has to support this.
  6. Other things needed: speakers (I’d like three-piece, but they don’t have to be great), keyboard and mouse (again, I’m not picky here, but wireless would be nice), wifi (doesn’t have to be good wifi, and I’ll be wired most of the time, but it’s a very handy fallback).
  7. Total budget: ~£1500
  8. adequate cooling. I don’t know anything about cooling.
  9. not overclocked.

The actual spec of the machine looks like this, which is a long boring list but can’t be helped:

Component type Component chosen notes Case InWIN 904 so gorgeous a case. wow. Processor (CPU) Intel® Core™i5 Quad Core Processor i5-4670 (3.4GHz) 6MB Cache didn’t get the K model because I don’t plan to overclock it. Haswell, because that’s the newest. Only an i5, though; the i7 was quite a bit extra and I decided I could do without it Motherboard ASUS® Z87-A: ATX, USB3.0, SATA6GB/S, SLi, XFIRE Memory (RAM) 16GB KINGSTON DUAL-DDR3 1600MHz (2 x 8GB) memory! yes! never going to run out again, ever Graphics Card INTEGRATED GRAPHICS ACCELERATOR (GPU) Hard Disk 180GB INTEL® 530 SERIES SSD, SATA 6 Gb/s (upto 540MB/sR | 490MB/sW) don’t need a lot of storage (I have a home server for that) but I do want SSD. 180GB is enough; currently have 120GB which is a tiny bit tight 1st DVD/BLU-RAY Drive 24x DUAL LAYER DVD WRITER ±R/±RW/RAM Memory Card Reader NONE irritatingly, this can’t go in my chosen case; they’re all to fit 3.5” spaces. I may buy a blanking plate and put one in the 5.25” slot. Power Supply CORSAIR 350W VS SERIES™ VS-350 POWER SUPPLY Processor Cooling Super Quiet 22dBA Triple Copper Heatpipe Intel CPU Cooler as per recommendation from the PC Specialist forums Extra Case Fans & Fan Controller NONE because I am not a lunatic gamer Sound Card ONBOARD 6 CHANNEL (5.1) HIGH DEF AUDIO Wireless/Wired Networking WIRELESS 802.11N 150Mbps PCI-E CARD Monitor ASUS 27" Professional SERIES PB278Q twenty seven inches of glory3 Keyboard & Mouse LOGITECH® MK520 WIRELESS KEYBOARD & MOUSE COMBO always rated Logitech stuff, personally Speakers LOGITECH LS21 2.1 SILVER/BLACK SPEAKER SYSTEM ditto Webcam Logitech® HD Webcam C525 - 720p HD Video, 8 Megapixel Photos ditto Warranty 3 Year Silver Warranty (1 Year Collect & Return, 1 Year Parts, 3 Year Labour) Price £1,365.00 have to skip lunch and save the money. Possibly several times a day.

I’m super-pleased with it. It looks gorgeous, which is precisely what I was hoping for. And the screen’s massive.

I’d like to live in a world where it’s possible to buy off-the-shelf gorgeous Ubuntu computers. At the moment, we’re not quite in that world. It is possible to buy pretty desktop PCs; in the UK, the place to go for that is Utopia Computers. Unfortunately, everyone who sells attractive machines rather than beige boxes is either (a) Apple or (b) primarily catering to an audience of gamers. So the machines you buy have super-high-end graphics cards and nutty cooling systems. I don’t want one of those; I’m not a gamer. I want raw power, but Intel graphics is enough for me, and it’s better supported by Ubuntu. So, annoyingly, that meant having to spec my own machine. I didn’t want to do that, because I have no idea which RAM to buy or which motherboard. PC Specialist did a pretty reasonable job of checking that sort of thing — their online wizard thing pops up saying “that card doesn’t fit with that motherboard”. Part of the issue here, I think, is that most people don’t consider it a good use of money to buy an attractive computer, and those that do are already in the Apple camp. Linux users are even worse at this — spending money on something because it looks nice is actively discouraged, which is thunderously wrong but I can’t stop people from doing it. Ubuntu is attempting to project a different vibe — that form is just as important as function — but because it’s still at least partially most popular among Linux people, it’s not making much headway. I surely can’t be the only person alive who appreciates the Apple aesthetic but wants Ubuntu machines, who thinks that we the Ubuntu community are allowed beautiful machines and should not be inured to the idea that you buy cheap-looking plastic stuff because that’s all you can get that runs Ubuntu. But it feels like I am, some days. I’d like to say that someone4 should set up a business selling pretty Ubuntu computers, but I fear that the subset of users who

  1. want a desktop rather than a laptop
  2. want Ubuntu
  3. value attractiveness over cheapness

is small enough that there’s not enough of a business model there.

Anyway, I shan’t rant. I have a lovely computer and I am happy. Hooray! I hope your machine is beautiful too. If not… maybe think about that, next time.

  1. even if it is some weird Lenovo-specific weird thing
  2. If you’re interested in further discussion of why having a laptop is important, and the idea that lots of people have one unmoving “main” laptop” and one small “conference” laptop, and that the “main” laptop could be a desktop instead, then see the Bad Voltage episode above
  3. an essential part of a good evening
  4. yes, I’m aware that I could be someone

Michael Hall: UbBloPoMo ends

Planet Ubuntu - Sat, 2014-03-01 04:49

I almost forgot to post today, which would have been sad because it’s the last day of my UbBloPoMo plan. But I still have 30 minutes before March 1st (my time), so I’ll type quickly to make this one count.

This will be the 21st post using the UbBloPoMo tag, and I’m quite pleased with the way it turned out. Not only has it gotten me out of a rut on not blogging, it also boosted my site traffic rather significantly and, I hope, given Planet Ubuntu readers a little more regular and irregular content.

I did miss one day, but the following post proved to be the most popular of the month.  It got a lot of people talking and even landed me a guest spot on the Linux Unplugged show, which was quite a bit of fun and I would love to do again (subtle hints there).

I don’t plan on continuing this blog-a-day through into March, but I do plan on keeping this blog more active than it was most of last year.  I hope you’ve all enjoyed reading these posts as much as I’ve enjoyed writing them, and even more I hope I’ve inspired some of you to blog more on your own websites.

Posted with 10 minutes to spare.

Sam Hewitt: Chicken Madras

Planet Ubuntu - Sat, 2014-03-01 00:00

Among my favourite dishes are curries and to do them justice takes a little more preparation and a well stocked pantry, but they're always worth it.

    Ingredients
  • 1 tablespoon coriandre seeds
  • 1 cumin coriandre seeds
  • 1+ dried red chili peppers
  • 1/2 tablespoon fennel seeds
  • 3 cloves garlic
  • 1 three-inch piece of ginger, peeled
  • 1-2 kg chicken legs (or thighs), skinned
  • 2-3 tablespoons Ghee (clarified butter) or coconut oil*
  • 1 onion, thinly sliced
  • 350mL (1 can) coconut milk
  • 2 teaspoons salt
  • 2 table spoons ground turmeric./li>
  • 8 green cardamom pods
  • 2 cinnamon sticks
  • 1 tablespoon garam masala
  • 2 tablespoons honey
  • 3 tablespoons tamarind paste
  • Water

Tamarind is a very sour fruit paste and is essential to making this dish a madras.

*You can substitute regular butter or a vegetable oil if you have neither of these ingredients.

Also if you don't have whole spices (like the coraindre, cumin and fennel) you can use the pre-ground stuff from your favourite store. Having said that, if you're into spice-rich dishes like this one, it's best to stock up on your whole spices.

The chilies are where the heat comes from in this dish. You can use as many as your tolerance allows, or leave them out entirely –like most things in cooking it's up to you really.
  1. In a dry non-stick skillet and in separate batches roast the coriandre, cumin and fennel seeds –this means leaving the spices in the pan on high heat until they start to become fragrant–then remove each and set aside.
  2. Grind the coriandre, red chilies and cumin in a spice grinder.
  3. In a small blender or food processor, make a paste of the garlic, ginger, and just ground cumin & coriandre (add a little water if need be to get it going). Set aside.
  4. Dissolve the tamarind in 1/2 a cup or so of water with the garam masala and honey. Set aside.
  5. Preheat a large saucepan over medium-high heat.
  6. Add the butter (or oil) and brown the chicken on all sides. When finished, remove the chicken and set aside.
  7. Add a little water and the sliced onions to the pot. Scrape all the lovely browned bits off the bottom of the pot while sauteeing the onion. Continue to saute for ~5 minutes
  8. Add your ginger-garlic-spice paste and further saute (while constantly stirring to avoid burning) for another few minutes.
  9. Add the coconut milk and another couple equal parts water. Bring to a boil, then reduce heat to low-ish.
  10. Add the cinnamon sticks, fennel, turmeric and cardamom pods. Season with the salt.
  11. Return the chicken and simmer for 60-90 minutes, adding a little water every so often to replace lost liquid.
  12. When the chicken is tender, remove and strain the remaing sauce through a fine-mesh strainer pressing out any liquid from the remnants –if you're into the whole rustic thing, feel free to leave in the whole spices, picking them out as you eat.
  13. Return the sauce to the pot and add the tamarind paste mixture. Return the chicken also. Allow the flavours to blend for another 10-15 minutes.
  14. Serve with rice and/or naan bread. Enjoy.

This version of a madras is done with chicken, but of course if can be done with lamb, beef, or even potato, although with the latter, you'd just add them raw, peeled and whole in the simmering step.

Ubuntu Server blog: The Ubuntu Server team is hiring!

Planet Ubuntu - Fri, 2014-02-28 20:58

We are looking for two fabulous Software Engineers to join the Ubuntu Server team. Check out the individual job listings for more details:

Think you’ve got what it takes? Apply!

Ronnie Tucker: Full Circle #82 arrives in your digital piggy bank

Planet Ubuntu - Fri, 2014-02-28 20:33

This month:
* Command & Conquer
* How-To : Python, LibreOffice, and Connecting iOS Devices.
* Graphics : Blender and Inkscape.
* Review: NOD32 Anti-virus
NEW! – Security Q&A
NEW! – What Is: CryptoCurrency
plus: Q&A, Linux Labs, Ask The New Guy, Ubuntu Games, and even some competitions!

Get it while it’s hot!

http://fullcirclemagazine.org/issue-82/

Daniel Pocock: Google Summer of Code opportunities in data science and machine learning with Ganglia

Planet Ubuntu - Fri, 2014-02-28 20:19

As mentioned in my blog on Monday, the Ganglia Project is proud to be part of Google Summer of Code in 2014

The Ganglia team are offering various types of projects and different parts of Ganglia would welcome students with different skills, for example:

Component Skills gmond agent C gmond modules C or Python JMXetric Java gmetad and rrdtool for storing time series data C Ganglia web interface JavaScript and jQuery Ganglia integration (e.g. ganglia-nagios-bridge) Python Big data right under your nose

I have had many queries from students about how to get into data science.

Very few students will be lucky enough to get an internship where they can study time-series from the financial markets and experiment making their own trading algorithms.

On the other hand, network performance data is everywhere. It is real-time. It is surprisingly similar in some ways to processing financial data and it provides excellent opportunities for students to practice data science skills and make a meaningful contribution to solving real problems.

Finding public Ganglia data with Google

Many large organizations, including universities, Governments and corporations are using Ganglia to gather metrics from all the hosts in their networks. Some of them even expose this data to the public. Here are two Google searches you can use to find them:


Courtesy of Université Montpellier 2, France

Some sites may even expose their data as an XML feed, you can try and extract it by connecting to the Ganglia server on one of these ports

Port Comments 8649 gmond: sends an XML snapshot to anybody who connects 8651 gmetad: sends an XML snapshot to anybody who connects 8651 gmetad: works a little bit like HTTP, returns a subset of the XML snapshot when you make a GET request

You can discover a Ganglia environment in your campus by looking for a gmond process on your machine and the gmond.conf file, often in /etc/gmond.conf or /etc/ganglia/gmond.conf. That file may contain a clue about the name of the host where Ganglia data is aggregated:

udp_send_channel { host = ganglia-reports.example.edu port = 8649 ttl = 1 }

This tells you that the host ganglia-reports.example.edu is collecting the data - you could try the URL http://ganglia-reports.example.edu/ganglia/ in a web browser or try connecting to one of the TCP ports 8649, 8651 or 8652 on that host. Here is an example with netcat:

$ nc ganglia-reports.example.edu 8649 | grep ^.H

It will return a list of all hosts that Ganglia knows about.

Once you have a data feed, you can then configure a gmetad process on your own system to poll the remote system and generate local RRDs for you to study.

Install your own Ganglia

It is very easy to get your own Ganglia setup.

On a Debian or Ubuntu system, just do:

# apt-get update # apt-get install ganglia-monitor ganglia-webfrontend

On Fedora and RPM-based systems (such as CentOS or RHEL with EPEL) you can do:

# yum install ganglia-gmond ganglia-web

Everything should be autoconfigured. You can then browse to http://localhost/ganglia to see the charts.

If you have several hosts with the gmond agent (just the ganglia-monitor.deb or ganglia-gmond.rpm) on the same LAN, they will automatically find each other using multicast and you will see an aggregated report on the machine with the web server.

The data is real-time

It is important to keep in mind that the data is real-time. This means you can often detect problems in real-time. If this blog appears on slashdot, for example, then that image from Université Montpellier 2 will be hit many times. The image actually shows the network load on the web server producing the image, so you will see the slashdot effect graphically in the image itself.

Processing real-time data is often the most advanced step in any data science exercise. Initially, you may simply log a few days of data to RRD files to start studying a static data set with your tool of choice, whether it is the R project, Weka or Hadoop

Once you have a a hypothesis (for example, an algorithm that understands the normal characteristics of each metric) you may then take each new real-time value from the gmetad XML and test it with the algorithm. The algorithm would then raise an alert if any metric on any host deviates from its normal behavior.

Mixing in other sources of data

Depending upon the computing environment in your campus or organization, you may also be able to get other data sources, such as a list of people logged in to different machines at different times and the processes that each user starts and stops.

This might help to make more accurate predictions about when network or computing resources will be under stress. For example, if users bob, alice and eve all appear on the same host, your algorithm might conclude that the load average will reach an excessive level within 15 minutes and send those three users a suggestion to each try other machines.

Making a successful application for GSoC 2014

Here are some tips

  • For all organizations/projects
  • For Ganglia and the data science project in particular
    • Join the ganglia-general mailing list and send an email to introduce yourself
    • Try Ganglia on your own Linux system. Use the packages, it is really easy. Send an email to the list with any questions.
    • Explore the source code in github - ask us questions about it. For the data science project, you may also need to look at RRDtool source code and documentation about making a plugin for R (using C)
    • You don't have to do it our way: if you prefer to work with another tool instead of R, please tell us your idea
    • Write some skeleton code or make a diagram to explain what you want to do. While you do this, do you think of any new questions or problems? Make a list of them.
    • We want to give every student a small coding task as a test. Please tell us which language you prefer (e.g. C, Java, Python) so we can give you a suitable test. If you are really keen, follow the link to bugs I reported in Debian, look for one that is easy and try to write a small patch for it - helping fix bugs that annoy your mentor is likely to be a good way to get on the short-list for selection.

Colin King: Finding small bugs

Planet Ubuntu - Fri, 2014-02-28 20:15
Over the past few months I've been using static code analysis tools such as cppcheck, Coverity Scan and also smatch on various open source projects.   I've generally found that most open source code is fairly well written, however, most suffer a common pattern of bugs on the error handling paths.  Typically, these are not free'ing up memory or freeing up memory incorrectly.  Other frequent bugs are not initialising variables and overly complex code paths that introduce subtle bugs when certain rare conditions are occur.  Most of these bugs are small and very rarely hit; some of these just silently do things wrong while others can potentially trigger segmentation faults.

The --force option in cppcheck to force the checking of every build configuration has been very useful in finding code paths that are rarely built, executed or tested and hence are likely to contain bugs.

I'm coming to the conclusion that whenever I have to look at some new code I should take 5 minutes or so throwing it at various static code analysis tools to see what pops out and being a good citizen and fixing these and sending these upstream. It's not too much effort and helps reduce some of those more obscure bugs that rarely bite but do linger around in code.

Marcin Juszkiewicz: ARM7 != ARMv7

Planet Ubuntu - Fri, 2014-02-28 16:18

ARM architecture is fun when it comes to names and numbers. And it is around 30 years old as well. So from time to time I have a discussion where I say something like in title…

There are few sources of mistakes when it comes to ARM. Family names, instruction sets, core names and marketing. Hard to tell which makes biggest mess…

Anything below ARMv7a is history — there is ARMology about it so please read it. But it does not mean that we have clear situation now :D

ARMv7a (and higher) means Cortex-A family. But due to companies like AllWinner and Apple we have it more complicated:

  • A4 is Apple cpu with Cortex-A8 core
  • A5 is low-end Cortex-A5 core but also Apple cpu with Cortex-A9 cores (there was also A5X)
  • A6 is Apple cpu with their own core (also A6X)
  • A7 is Cortex-A7 core but also Apple cpu with 64-bit ARMv8 cores
  • A8 is Cortex-A8 core (the only single core Cortex-A)
  • A9 is Cortex-A9 core
  • A10 is AllWinner cpu with Cortex-A8 core (there was also A10s)
  • A12 is Cortex-A12 core
  • A13 is AllWinner cpu with Cortex-A8 core (stripped down A10)
  • A15 is Cortex-A15 core
  • A17 is Cortex-A17 core
  • A20 is AllWinner cpu with Cortex-A7 cores
  • A23 is AllWinner cpu with Cortex-A7 cores
  • A31 is AllWinner cpu with Cortex-A7 cores (also A31s)
  • A53 is Cortex-A53 core (64-bit ARMv8)
  • A57 is Cortex-A57 core (64-bit ARMv8)
  • A80 is AllWinner cpu with eight cores (4xA7 + 4xA15)

There are also other Cortex cores but their name do not start with “A” :) But the good thing is that all ARMv7a cpus can run same code. ARMv8 ones can run own code — 32-bit support is optional. All all major distros like Debian, Fedora, OpenSUSE or Ubuntu work on support for both families.

All rights reserved © Marcin Juszkiewicz
ARM7 != ARMv7 was originally posted on Marcin Juszkiewicz website

Related posts:

  1. Samsung will have big.LITTLE. So what?
  2. What interest me in ARM world
  3. ARMology

Ubuntu LoCo Council: LoCo Teams Update On Air!

Planet Ubuntu - Fri, 2014-02-28 06:17

As you read it. From now on, Philip Ballew, Nathan Haines and I (José Antonio Rey) will be hosting a monthly LoCo Teams Update session at Ubuntu on Air!.

For these to be a success, we need your help. The updates will have news from the LoCo Council, and will also highlight what LoCo Teams are doing around the world! That means, if your LoCo Team is having an event or wants to be mentioned on the show for something they are going to do or have already done, you need to tell us so we can feature it.

All LoCo Teams are welcome to send their news to us so they can be featured on the show. Just send an email to onair@ubuntu.com, and make sure to start the subject with [LoCo Update]. An example of a subject would be “[LoCo Update] Release party hosted!” (don’t forget to mention which LoCo Team this is coming from!)

You can send text so we can read, but you can also send us your pictures and photos of the event, so we can show them to the world on this show. These sessions are all about you and your LoCo Team, so we are totally welcome to suggestions about what can be done in the future to improve the show. We may even start having some guests from LoCo Teams! Also, we will be using the #ubuntu-on-air channel on irc.freenode.net (Click here to join from your browser) to host discussion about the session. Anyone is welcome to come!

Our first session is going to be on Saturday, March 22nd, at 19 UTC. From that point on, we will be having sessions on the fourth Saturday each month, at the same time. You will be able to see the sessions at the Ubuntu on Air! calendar.

We hope to see you there, and expect to receive many news to be featured on the show!

The Fridge: Announcing Trusty Tahr Beta 1

Planet Ubuntu - Fri, 2014-02-28 00:47

The first Beta of Trusty Tahr (to become 14.04 LTS) has now been released for testers and early adopters.

This beta features images for Edubuntu, Kubuntu, Lubuntu, Ubuntu GNOME, Ubuntu Kylin, Ubuntu Studio, Xubuntu and the Ubuntu Cloud images.

These are not to be used as stable systems but please do test for bugs to report. Always ensure your system is up to date before reporting bugs.

Edubuntu

Edubuntu is the educational flavour of Ubuntu. It’s very similar to stock Ubuntu but integrates a lot of educational software, supports thin clients (LTSP) and offers an optional GNOME Flashback desktop as an alternative to Unity.

The Beta 1 images can be downloaded at: http://cdimage.ubuntu.com/edubuntu/releases/trusty/beta-1/

More information on Edubuntu beta 1 is published here: http://www.edubuntu.org

Kubuntu

Kubuntu is the KDE based flavour of Ubuntu. It uses the Plasma desktop and includes a wide selection of tools from the KDE project. In this LTS cycle the Kubuntu team are working on stabalising and bug fixing.

The Beta 1 images can be downloaded at: http://cdimage.ubuntu.com/kubuntu/releases/trusty/beta-1/

More information on Kubuntu Beta 1 can be found here: https://wiki.kubuntu.org/TrustyTahr/Beta1/Kubuntu

Lubuntu

Lubuntu is a flavor of Ubuntu based on LXDE and focused on providing a very lightweight distribution.

The Beta 1 images can be downloaded at: http://cdimage.ubuntu.com/lubuntu/releases/trusty/beta-1/

More information on Lubuntu Beta 1 can be found here: https://wiki.ubuntu.com/TrustyTahr/ReleaseNotes/Beta1/Lubuntu

Ubuntu GNOME

Ubuntu GNOME is a flavour of Ubuntu featuring the GNOME desktop environment.

The Beta 1 images can be downloaded at: http://cdimage.ubuntu.com/ubuntu-gnome/releases/trusty/beta-1/

More information on Ubuntu GNOME Beta 1 can be found here: https://wiki.ubuntu.com/TrustyTahr/Beta1/UbuntuGNOME

UbuntuKylin

UbuntuKylin is a flavour of Ubuntu that is more suitable for Chinese users.

The Beta 1 images can be downloaded at: http://cdimage.ubuntu.com/ubuntukylin/releases/trusty/beta-1/

More information on UbuntuKylin Beta 1 will be published here: http://www.ubuntukylin.com/

Ubuntu Studio

Ubuntu Studio is a flavor of Ubuntu focused on multimedia content creation.

The Beta 1 images can be downloaded at: http://cdimage.ubuntu.com/ubuntustudio/releases/trusty/beta-1/

The release announcement can be found at: http://ubuntustudio.org/2014/02/14-04-beta-1-release/

Xubuntu

Xubuntu is the Ubuntu flavour with Xfce, a stable, light and configurable desktop environment.

The Beta 1 images can be downloaded at: http://cdimage.ubuntu.com/xubuntu/releases/trusty/beta-1/

The release announcement can be found at: http://xubuntu.org/news/xubuntu-14-04-beta-1/

The complete release notes are at: http://wiki.ubuntu.com/TrustyTahr/ReleaseNotes/Beta1/Xubuntu

Ubuntu Cloud

Ubuntu Cloud images can be run on Amazon EC2, Openstack, SmartOS and many other clouds.

http://uec-images.ubuntu.com/releases/trusty/beta-1/

Regular daily images for Ubuntu (Unity) can be found at: http://cdimage.ubuntu.com/daily-live/current/

If you’re interested in following the changes as we further develop Trusty, we suggest that you subscribe to the ubuntu-devel-announce list. This is a low-traffic list (a few posts a week) carrying announcements of approved specifications, policy changes, beta releases and other interesting events.

http://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-announce

Stéphane Graber, on behalf of the Ubuntu release team.

Originally posted to the ubuntu-devel-announce mailing list on Thu Feb 27 21:01:46 UTC 2014 by Stéphane Graber

Lubuntu Blog: Trusty Tahr β1

Planet Ubuntu - Thu, 2014-02-27 22:57
It's here, the beta 1 for Lubuntu 14.04 (Trusty Tahr) for testing, as well as other flavours (Kubuntu, Xubuntu and UbuntuGnome) and I must (as always) remind you this is not suitable for production environment. Some changes you can find in this release are: New pcmanfm (1.2.0 version), with a lot of new features (folder settings, dual pane view, menu editing) New lxsession-default-apps with a

Kubuntu: Trusty Beta 1 Available for Testing

Planet Ubuntu - Thu, 2014-02-27 21:15
Trusty Beta 1, based on KDE SC 4.12.2, is available for Testing. The Beta 1 images can be downloaded at: http://cdimage.ubuntu.com/kubuntu/releases/trusty/beta-1/. More information on Kubuntu Trusty Beta 1 can be found here https://wiki.kubuntu.org/TrustyTahr/Beta1/Kubuntu.

Ubuntu Studio: 14.04 Beta 1 Release

Planet Ubuntu - Thu, 2014-02-27 21:04
Ubuntu Studio 14.04 Trusty Tahr Beta 1 is released! You may find the images at cdimage.ubuntu.com/ubuntustudio/releases/trusty/beta-1/. Reporting Bugs If you find any bugs with this release, please report them, and take your time in making the bug report as well formulated as possible. You’ll need an account at launchpad.net. Making a bug report can be […]

Xubuntu: Xubuntu 14.04 Beta 1

Planet Ubuntu - Thu, 2014-02-27 18:41

The Xubuntu team is pleased to announce the immediate release of Xubuntu 14.04 Beta 1. This is the first beta towards the final LTS release, and with it we have landed a lot of new features and improvements we’ve been preparing since the last LTS release two years ago.

The beta 1 release is available for download by torrents and direct downloads from
http://cdimage.ubuntu.com/xubuntu/releases/trusty/beta-1/

Highlights and known issues

The highlights of this release include:

  • Light Locker replaces xscreensaver for screen locking, a setting editing GUI is included
  • The panel layout is updated, and now uses Whiskermenu as the default menu
  • Mugshot is included to allow you to easily edit your personal preferences
  • MenuLibre for menu editing, with full Xfce support, replacing Alacarte
  • A community wallpapers package, which includes work from the five winners of the wallpaper contest
  • GTK Theme Config to customize your desktop theme colors
  • Updated artwork, including numerous enhancements to themes

Some of the known issues include:

  • xfdesktop crashes after logging in to the desktop (1282509)
  • Thunar doesn’t automatically mount removable devices and media (1210898)
  • Network shares aren’t shown on the desktop (1284914)
  • Wallpaper selection dialogue empty (1271713)

To see the complete list of new features, improvements, changes and bugs, read the release notes.

The first beta release also marks the end of the period to land new features in the form of Ubuntu Feature Freeze. This means any new updates to packages should be bug fixes only which the Xubuntu team is committed to fix as many of the bugs as possible before the final release.

Other efforts & thanks

As always, contributors to Xubuntu have worked on various projects not directly visible in the release. While any of these would be worth mentioning, the following are a few we felt may be of interest to the community:

  • QA efforts, including ISO and package testing as well as bug reporting and triaging
  • Marketing projects, including work on a flyer to promote Xubuntu for people still running Windows XP
  • Website updates, including a theme refresh

While many of the improvements in Xubuntu since the last LTS are, indeed, not directly visible. Some of the major improvements have been in design and theming, and as such we hope that you don’t see them – good design should be invisible.

Thanks to everybody contributing to Xubuntu! As always, new contributors are always welcome to join us. There are various different tasks to do, from testing daily ISOs and new package versions to writing and translating documentation to fixing bugs. To learn more about contributing, read the Get Involved section on the Xubuntu website.

Pages

Subscribe to Free Software Magazine aggregator