LUG Community Blogs

Aq: Writing a simple desktop widget for Ubuntu

Planet WolvesLUG - Mon, 03/03/2014 - 01: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.

Categories: LUG Community Blogs

Aq: I bought a new computer

Planet WolvesLUG - Sat, 01/03/2014 - 14: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:

table.pcspec { border-collapse: collapse; } table.pcspec th { font-weight: bold; background: #333; color: white; } table.pcspec td { background: #f7f6f5; color: #333; } table.pcspec tr:nth-child(2n) td { background: white; } 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
Categories: LUG Community Blogs

David Goodwin: Automated twitter compilation up to 01 March 2014

Planet WolvesLUG - Sat, 01/03/2014 - 07:00

Arbitrary tweets made by TheGingerDog (i.e. David Goodwin) up to 01 March 2014

(2014/02/26, Bromsgrove, Worcestershire src)
  • I think I may have eaten too much rhubarb crumble. #feelingSedentary (2014/02/26, Bromsgrove, Worcestershire src)
  • RT @tdobson: You wouldn’t steal a handbag… you wouldn’t write your own SSH Daemon in PHP… You wouldn’t deploy said code? Oh wait, MTGOX… (2014/02/26 src)
  • RT @coates: This is why you ALWAYS use `{` and `}` in conditional blocks in C-syntax languages, friends: https://t.co/lmgveZw7uO Laziness i… (2014/02/22 src)
  • RT @daringfireball: ★ On the Timing of iOS’s SSL Vulnerability and Apple’s ‘Addition’ to the NSA’s PRISM Program: t.co/q66IRec7VF (2014/02/22 src)
  • Hockey: Bromsgrove 3xi 4:3 Kings Heath. Great result. (Cc @BromsgroveHC ) (2014/02/22 src)
  • RT @birminghampost: ‘Offshored’ jobs heading back to region: Rising costs in China and the Far East means a boost for Midlands emp… http:… (2014/02/21 src)
  • Dog poo minefield. t.co/V9JbjDCRBM
  • (2014/02/18, Bromsgrove, Worcestershire src)
  • “All of our operators are currently engaged. …”
    Presumably lots of weddings soon then NatWest ??? (2014/02/18 src)
  • Your call is important to us and will be answered as soon as possible. #lies (2014/02/18 src)
  • Watching my tablet slow to a crawl as it installs weeks of app updates. #almostUnused #firstWorldProblems #nexus10 (2014/02/18 src)
  • RT @adamclarkestes: In Norway they’re spraying reindeer antlers w a reflective coating to protect them from cars t.co/gYe9EgFdii htt…
  • (2014/02/17 src)
  • RT @rythie: Less commonly used UNIX commands: t.co/5wYVfC7NXQ (2014/02/17 src)
  • RT @laurawolfe: Apostrophes. Commas. There/their. Were/we’re. To/too/two. Was/were. Definitely. It’s/Its. Those/them. It’s not that hard re… (2014/02/17 src)
  • Today I’ve filled in a Winding up order to possibly present to Mr LatePayingCustomer #funtimes https://t.co/2MbtdbCn11 (2014/02/17 src)
  • Bromsgrove 3xi hockey vs Wolverhampton – we won 3:0 (2014/02/15 src)
  • RT @phpizer: PHP is Awesome t.co/JPORgoPyyQ (2014/02/14 src)
  • RT @shiflett: Google, I’m sorry to keep complaining, but can you please make using your apps with multiple accounts suck less? Pretty pleas… (2014/02/14 src)
  • RT @mtabini: Never quite gotten the point of flowers. “Here, I killed these for you… now watch them die.” (2014/02/14 src)
  • RT @grifferz: “I wanted to ask you a very important and timely question…”
    t.co/42WABKzGL2 (2014/02/14 src)
  • RT @MelanieHall: Bitter single man scuppered Valentine’s Day by booking every other seat at a cinema to stop couples sitting together http:… (2014/02/14 src)
  • RT @codinghorror: hahaha I thought I had feelings before I had children. I had no idea, NO IDEA what feelings even were. Recalibrated all a… (2014/02/14 src)
  • RT @stevesilberman: Just another rainy day in Newlyn, UK, apparently. [via @traceysuckling] t.co/aTsApsoxLy
  • (2014/02/14 src)
  • RT @ThatMrDan: We have rules. t.co/pfXKgviu8w
  • (2014/02/14, Manchester, Manchester src)
  • RT @beerops: Roses are red
    Violets are blue
    Nagios is red
    OH FUCK THE SITE’S DOWN (2014/02/14 src)
  • RT @grifferz: Roses are red
    Violets are blue
    Your bitcoins are in escrow
    on The Silk Road 2
    …bugger. (2014/02/14 src)
  • RT @darachennis: Meanwhile on erlang-questions, the lurking, it was good, and profitable… t.co/eCMw1BgbZa (2014/02/14 src)
  • RT @rowangoodwin: Headteacher’s award ! Excellent tricky word spelling! t.co/f1jZ03XUfP
  • (2014/02/14 src)
  • “Is it me, or is it a bit hot in here? Ah – you must be with @OvoEnergy!” #feellovedagain (2014/02/14 src)
  • The school jester #hair t.co/jGmZTVO12I
  • (2014/02/13 src)
  • RT @Pundamentalism: Sent my girlfriend a dozen roses for Valentine’s Day. Hope she’s not upset that I ate the rest of the box. (2014/02/09 src)
  • Free petrol in Bromsgrove ! t.co/WL1WEPnyJY
  • (2014/02/06, Bromsgrove, Worcestershire src)
  • Breaking Flanders #simpsons t.co/dKRJEFkp1J
  • (2014/02/05 src)
  • RT @GeorgeTakei: Cannot. Be. Unseen. t.co/z7ZLKrrbQh
  • (2014/02/03 src)
  • Rebooting an unbacked up server which had/has I/o issues & locked up. If only $customer listened to my warnings. Crossing fsck fingers ATM! (2014/02/03 src)
  • RT @chbid: Simply brilliant. A poem. RT @iancawsey: I don’t normally like graffiti but……. t.co/CgFU0sYNcP
  • (2014/02/01 src)
  • RT @herdyshepherd1: “@suejaned: so what did the ancient Herdwicks live on during winter without an awesome shepherd to feed hay?”They had…
  • (2014/02/01 src)
  • RT @JayTaph: Instant feedback on your #phpunit tests while you’re editing code or tests. In case your editors won’t.. https://t.co/Y08Dg6C… (2014/02/01 src)
  • Bromsgrove men 3xi vs streetly. Lost 2-1 #hockey (Cc @BromsgroveHC ) (2014/02/01, Walsall, Walsall src)
  • RT @DavidMcQueen: Theiyr’reTake that, grammar police.
  • (2014/01/31 src)
  • RT @NewsToad: Happy Chinese New year!! And it’s going to be a filthy one if BBC news subtitles are anything to go by….. t.co/Mie1z
  • (2014/01/31 src)
  • RT @mhelft: Harsh working conditions in Silicon Valley t.co/XlJJL3kPZN
  • (2014/01/31 src)
    Categories: LUG Community Blogs

    Mick Morgan: the spy in your bathroom

    Planet ALUG - Fri, 28/02/2014 - 21:40

    Back in June 2008 I noted Craig Wright had posted to bugtraq reporting a “remote exploitation of an information disclosure vulnerability in Oral B’s SmartGuide management system”. I found it faintly amusing that a security researcher should have been looking for vulnerabities in a toothbrush.

    I should have known better.

    A report in wednesday’s on-line Guardian points to the release of a new smart tootbrush from Oral B. Apparently that toothbush will link via bluetooth to an app on either an iPhone or Android and report back to your dentist. Apparently Oral B “sees the connected toothbrush, launched as part of Mobile World Congress’s Connected City exhibition, as the next evolution of the smart bathroom.” Wayne Randall, global vice president of Oral Care at Procter and Gamble reportedly said:

    “It provides the highest degree of user interaction to track your oral care habits to help improve your oral health, and we believe it will have significant impact on the future of personal oral care, providing data-based solutions for oral health, and making the relationship between dental professionals and patients a more collaborative one.”

    That’s just great. GCHQ have plenty of other personal data feeds already without giving them access to our bathrooms.

    Categories: LUG Community Blogs

    Jono Bacon: Bad Voltage Season 1 Episode 10 ‘Midnight Throne Travels’

    Planet WolvesLUG - Thu, 27/02/2014 - 19:22

    Stuart Langridge, Jeremy Garcia, Bryan Lunduke, and myself discuss:

    • Tech conferences — which ones are good, which ones are not, and why?
    • Desktop machines versus laptops, and a review of Stuart’s new gorgeous desktop computer from PC Specialist
    • Whistleblowing. In the light of the Snowden and Manning revelations, is whistleblowing a good idea, what’s available to protect whistleblowers from problems, and do we need to protect against those motivated by malice?
    • Miguel de Icaza, head of Xamarin and past founder of the Gnome and Mono projects, talks about why he was singled out as a “traitor”, what he’s doing now, and how to best work in the open source world
    • The winners in the Bad Voltage Selfie Competition! See this forum post for more details and all the entrants
    • A Bad Voltage community update covering growth on our community forum, the formation of our gaming community, the IRC channel, the Bad Voltage app, Bad Voltage at SCALE12x, and interesting post-show discussions.

    Go and listen to or download the show here.

    Be sure to share your thoughts on the show, the topics in it, ideas for future topics, and just be a part of the awesome and growing community of voltheads at http://community.badvoltage.org/ Also, be sure to join in the Bad Voltage Selfie Competition to win some free O’Reilly books!

    Categories: LUG Community Blogs

    Steve Kemp: Some direction, some distraction

    Planet HantsLUG - Thu, 27/02/2014 - 14:21

    It seems that several people replied to the effect that they would pay people to take care of applying security updates, or even configuring adhoc things such as wikis, graphite, and MySQL.

    Not enough people to rely upon, but perhaps there is scope for remote stuff being done in exchange for folding-money. (Of course some of those that replied are in foreign countries which makes receiving payment an annoyance, that's a separate problem though.)

    Food for thought.

    In the meantime I've settled into my use of lighttpd, which I've recently migrated to.

    One interesting thing is that you can set your own "Server Name" directive:

    # Set server name/version server.tag = "lighttpd/(steve)"

    This value is used by mod_dirlisting, so for example if you examine a directory which doesn't contain an index.html file you see the server-name. Cute.

    Well cute unless, or until, somebody sets:

    # Set server name/version server.tag = "<script>alert(3)</script>"

    That does indeed show javascript to all your visitors. Not a security problem itself, as you need to be root on the remote site. If you're root in the remote server you could just modify the actual HTML pages being served to include your javascript. That said it's a little icky.

    The following patch avoids the issue:

    --- mod_dirlisting.c.org 2014-02-26 00:14:43.296373275 +0000 +++ mod_dirlisting.c 2014-02-26 00:16:28.332371547 +0000 @@ -618,7 +618,7 @@ } else if (buffer_is_empty(con->conf.server_tag)) { buffer_append_string_len(out, CONST_STR_LEN(PACKAGE_DESC)); } else { - buffer_append_string_buffer(out, con->conf.server_tag); + buffer_append_string_encoded(out, CONST_BUF_LEN(con->conf.server_tag), ENCODING_HTML); } buffer_append_string_len(out, CONST_STR_LEN(
    Categories: LUG Community Blogs

    Jono Bacon: My Top 5 Dream Ubuntu Apps

    Planet WolvesLUG - Thu, 27/02/2014 - 02:30

    So, today we announced the Ubuntu App Showdown where you can build apps with the Ubuntu SDK and win some awesome prizes such as the Nexus 7 (2013) tablet and the Meizu MX3.

    This got me thinking, which apps would a love to see on Ubuntu as part of the competition? Well, this is them, and hopefully they will be food for thought for some developers:

    • Email Client – this would be an email client that looks and functions like Discourse. With it you could connect to an IMAP/Gmail account, see mail as threads, reply to mails, create and send new emails etc. Bonus points for supporting multiple accounts.
    • Social Media Client – I haven’t found a Twitter and other social media client that works well for me. This one would show my timeline of tweets, have mentions on a different tab/screen, and support searches too. It would use the Online Accounts platform service to connect.
    • Google+ Client – I would love to see a G+ client that integrates neatly into Ubuntu. It would need to browse my timeline, show notifications, let me reply to posts and add +1s, and browse communities.
    • Ubuntu LoCo Teams App – an app where I can view the content from loco.ubuntu.com such as browsing teams, seeing current and up-coming events, browse the blog, and include the content in the Ubuntu Advocacy Kit. The power in this app would be looking like a beautiful app that any LoCo member can use to find cool events and do interesting things.
    • Riff Recorder – an audio recording app where I can adjust the volume of the mic (for when I am in a room with lots of noise such as a rehearsal) and then record the audio at that level and have the ability to share it somewhere.

    If anyone manages to build these apps, you will make me a very happy man.

    Categories: LUG Community Blogs

    Jono Bacon: Join the Ubuntu App Showdown and Win Prizes!

    Planet WolvesLUG - Thu, 27/02/2014 - 01:59

    Today we launched our next Ubuntu App Showdown.

    The idea is simple: you have six weeks to build an application with the Ubuntu SDK that converges across both phone and tablet (which is simple). We have the following categories, each of which has a prize:

    • QML – a native app written in QML (wins a Nexus 7 (2013) tablet).
    • HTML5 – a native app written in HTML5 (wins a Nexus 7 (2013) tablet).
    • Ported – an app that has been ported from another platform to Ubuntu and used the Ubuntu SDK (wins a Nexus 7 (2013) tablet).

    We are also delighted to include an additional category with two prizes sponsored by Meizu:

    • Chinese – an app that is written in either QML or HTML5 that would be of most interest to Chinese users, such as connecting to Chinese sites and services (2 x Meizu MX3s as prizes).

    If you would like to get involved in the showdown, you can find out all the details here or for our Chinese friends here.

    HTML5 Refinements

    In preperation for the showdown we have also landed a number of significant improvements to HTML5 in the Ubuntu SDK. This includes:

    • Our HTML5 technology has been fully revamped and now all works from a single container.
    • A new single default template for creating your HTML5 app.
    • Full access to device sensors via cordova.
    • Full access to platform APIs via Javascript.
    • API documentation.
    • A brand new HTML5 section on developer.ubuntu.com complete with new guides, tutorials, API docs, and more.

    Remember, we award extra point for blogging about and sharing on social media about your app and how it is developing, so be sure to share your work! Good luck!

    Categories: LUG Community Blogs

    Jono Bacon: Ten Years of LugRadio, Zero Years of Bad Voltage

    Planet WolvesLUG - Thu, 27/02/2014 - 01:23

    Ten years ago today we started LugRadio. For those of you who don’t know what LugRadio was, it was a podcast that some friends and I did that took a loose, fun, and eclectic look at Open Source and Linux. It developed a bit of a cult following to the point where 40+ people still hang out in the #lugradio channel today.

    A am proud of what we achieved with LugRadio. Over 100 shows, 7 full-time presenters and countless guest presenters, 200+ hours of audio, 100+ guests, 2million+ downloads, multiple awards, 1000+ forums members, 40000+ forums posts, 6 live events in two countries, 5000+ emails to the show and an incredible community of people who surrounded the show, discussed it, got involved in some way, and otherwise gave us all immense enthusiasm to keep doing it.

    I remember the day I started discussing the idea with Stuart Langridge, stood in my kitchen in Wolverhampton after a Linux User Group meeting, and I don’t think either of us would have ever dreamed of how far it went.

    If you want to get a good idea of the show, check out the excellent documentary about LugRadio called Don’t Listen Alone by Tony Whitmore.

    Although LugRadio is now wedged in the historical record, the good news is that there is a new kid on the block in the form of Bad Voltage.

    Much is the same as with LugRadio (four presenters, show every two weeks, a focus on informative but entertaining content) but we don’t just limit the show to Linux and Open Source and we also cover technology, politics, gaming, and more. Check it out here.

    Categories: LUG Community Blogs

    Aq: There WILL be only one Ubuntu

    Planet WolvesLUG - Wed, 26/02/2014 - 19:23

    Michael Hall declares that there is no “Touch”, only “Ubuntu”. And he’s absolutely correct. Sadly for the rest of us, though, he’s writing that post from the future. There will be One Ubuntu, but we’re not quite there yet.

    Mike says that the difference is Unity 8. Actually, for the purposes of most people writing apps, I think that Unity 8 and Unity 7 don’t really enter into it. Unity works roughly the same way and presents roughly the same APIs. The biggest discrepancy right now between “Ubuntu Desktop” and “Ubuntu Touch” is that there’s a bunch of stuff available on the desktop which is not yet part of the platform API, which means that that stuff is not available on my Ubuntu phone yet and so I can’t use it.

    Let’s take a little example. Right now, push notifications are still being worked on for Ubuntu (which is fine; it’s a difficult project and needs care), and in their absence I don’t have a way to have something on my phone which tells me when I get an email. I hate that. I really don’t like not having email notifications: they were the first thing I turned on on my new machine. So I thought: how can I do that on my phone? I’m prepared to sacrifice a bit of battery life for this, if need be.

    Voice of the audience: just use cron! that’s what it’s for!

    Sadly, I can’t use cron on an Ubuntu phone. If I ssh into my phone (which I’m happy to do) and then do crontab -e, it doesn’t work, because the main filesystem is read-only and so crontab can’t save a cron file. Nor can I use upstart, because upstart doesn’t include time-based scheduling, sadly.1 I could, I suppose, run a daemon which schedules for me (and that’s what I’m looking at doing) but that’s not very excellent a solution.

    Voice of the audience: you can make the filesystem read-write!

    Yes. You can. I do not want to. If I do that I don’t get to have system updates any more. More importantly, though, if I do that, I’m not an app developer. I’m a platform developer. I don’t want to be a platform developer. I want to make apps. If I’ve done some platform-developer things — marked the filesystem read-write, written things to it, installed other packages, tweakd the config — then I lose one of the most important things about mobile development, which is knowing that your device is the same as everyone else’s. I’ll no longer be sure whether “it works on my device” means “it’ll work on someone else’s”, because now it might work on my device because I’ve poked the platform. I’m not running Ubuntu, then; I’m running Stubuntu. It’s the same reason I won’t install third-party non-Ubuntu stuff with sudo — Ubuntu owns the root filesystem. If you’re a third-party package or package manager, you go in my home folder. If you insist on not going in my home folder, or you make it really difficult to do so2 then you just don’t get installed at all.

    Look, I know this stuff is being worked on, and it’s fantastic. Ubuntu will be even better than it is at the moment, which is saying something. But at the moment there’s just no way to do a bunch of stuff on “Ubuntu Touch” which is possible on “Ubuntu Desktop”, until the ability to do that stuff appears in the platform API. That gap closes every day, and it’ll be brilliant when it’s finally gone, but until then there still is a difference between “Ubuntu Touch” and “Ubuntu Desktop”. Because when I ask the question “how do I get notified of new mails on Ubuntu?”3, the answer for my desktop is “install this app”, and the answer for my phone is “we can’t do that yet but we’ll be able to soon”. I’m fine with that being the answer: this is not a complaint that it’s not done yet, and I’d like to stress that point. This stuff is being worked on, and I know it’ll be great when done, but the fact remains that it’s not done yet. Until that day, there’s a distinction between “Ubuntu for my phone” and “Ubuntu for my desktop”, and it’s not just about phone-specific stuff like hardware access or app confinement. That distinction is currently present. Roll on the day when it’s not.

    1. and presumably will not, now that the focus has generally switched to systemd. That does have cron-ish abilities, but the phone isn’t using it yet
    2. rubygems, you are the weakest link, goodbye
    3. or “how do I get notified of new G+ posts” or “store key data from my app in a secure way” or “programmatically list what’s pinned to the launcher” or “update my desktop background whenever a particular file changes” or anything which requires some sort of background processing
    Categories: LUG Community Blogs

    Dick Turpin: Eager

    Planet WolvesLUG - Wed, 26/02/2014 - 10:38
    Colleague: "I understand you're moving, can we quote you for moving and setting up your equipment?"
    Prospect: "It's not even built yet!"
    Colleague: "Oh..........."

    #facepalm
    Categories: LUG Community Blogs

    Steve Kemp: What do you pay for, and what would you pay for?

    Planet HantsLUG - Tue, 25/02/2014 - 15:30

    There are times when I consider launching my own company again, most often when it is late at night and the inpetitude of so many other companies gets me too worked up. Then I sit back and think about details and write it off.

    I've worked for myself in the past a couple of times, and each time it was both more fun and more difficult than expected. Getting a couple of clients is usually easy, getting a ten more is common, but getting "many" is hard and getting "lots" is something I've never done - lots of users for free sites though, along with the associated support burdon!

    So the though dies away once I sit down and work out the net profit I'd need to live. My expenses are low, so let us pretend I can easily live on £1000 a month. So the "company" has to make more than that, to cover costs, but perhaps not much.

    Pretend you were offering DNS hosting you'd probably be able to implement that easily on, say 10, virtual machines, net of £150 a month. Imagine clients pay £5 for an unlimited number of domains that means you need to have 1000+150/5 = 230 clients. Not impossible, but also not easy.

    Pretend instead you're offering backup space, and the numbers get bigger because disk is expensive. Again getting some users would be easy, but getting lots would be hard because your competition is dropbox, skydrive, etc, etc.

    Once you start thinking of "ideas" they come easily, but the hard part is being realistic about what people would pay for. As always the idea is the easy part, the execution is the hardest part. Realistically if I were to be desperate to work for myself at short notic I'd do the obvious thing - I'd buy a pair of ladders, a bucket, and clean windows. Low overheads, reasonable demand, and I'd be both "fit" and "outdoors".

    When it comes to paying for online services off the top of my head I personally pay for maybe two things, both of them niche (although profitable for their providers I'm sure), and I know many people who live on the internet but pay for nothing.

    For example I'm a VIP member of an online modeling community, which in theory allows me a higher chance of persuading interesting people to pose for me.

    In practice the turnover on those sites is immense. Lots of cute boys and girls hear constantly "You're so pretty, you should be a model", which is true in perhaps 1% of cases, and the net result is you have a few hard working people who do good things day in day out, and many flighty teenagers who'll pose for two-three people, and then never do it again because they realise it is neither glamourous nor easy money.

    Two things I've semi-serously considered recently where hosted "status pages", and hosted "domain parking", but both have many competitors and both I can see a) some people would pay for but b) not very many.

    I suspect there is no universal "I'd pay for this" online service hwich is both competition free and genuinely trivial to setup, but I'd be curious to see what people are missing, and even more curious to see what people do pay for.

    Categories: LUG Community Blogs

    Debian Bits: Call for participants in the Google Summer of Code for Debian

    Planet HantsLUG - Tue, 25/02/2014 - 11:15

    The Google Summer of Code is a program that allows post-secondary students aged 18 and older to earn a stipend writing code for Free and Open Source Software projects during the summer.

    Debian has just been accepted as a mentoring organization for this year's program! We're looking for students and mentors to make this GSoC in Debian the best ever!

    Eligible students, now is the time to take a look at our project ideas list, engage with the mentors for the projects you find interesting, and start working on your application! For more information, please read the FAQ and the Program Timeline on Google's website.

    Mentors for prospective projects can still submit proposals on the project ideas list. You also need to send an email to the mailing list linked below to present your project in a few words. Feel also free to propose yourself as a co-mentor for one of the listed projects, more help is always welcome!

    If you are interested, we encourage you to come and chat with us on irc (#debian-soc on irc.oftc.net), or to send an email to the SoC coordination mailing-list (subscribe). Most of the Debian-specific GSoC information can be found on our wiki pages, but don't be afraid to ask us directly on irc or via email.

    We're looking forward to work with an amazing team of students and mentors again this summer!

    Categories: LUG Community Blogs

    Jono Bacon: Ubuntu Development Update Presentation

    Planet WolvesLUG - Tue, 25/02/2014 - 06:59

    This last weekend I was in LA at SCALE12x and gave a presentation providing a detailed update of much of the work going on as we build a convergent Ubuntu. As I have mentioned before, there is lots of other foundational pieces being built as part of this work (app insulation, SDK, click packages, developer.ubuntu.com, platform services etc), and this presentation covered where we stand today in this work.

    Obviously a lot more of you couldn’t be at SCALE than couldn’t, so I have recorded the presentation to share online. You can see it below or click here to watch it. Enjoy!

    Categories: LUG Community Blogs
    Syndicate content