|
|
||||||||||||||||
|
SearchAccount toolsUser loginWho's onlineThere are currently 0 users and 15 guests online.
|
Jon Phillips - Inkscape + Open Clip Art Library: links for 2008-03-11
Categories: Creative App blogs
Dave Neary: links for 2008-03-10
Categories: Creative App blogs
Dave Neary: GNOME annual report 2007I just ordered a hard copy of the GNOME annual report (PDF) from lulu.com. At €9.05 postage included it’s a little pricy for a 24 page printed document, so I’m expecting top quality. I almost backed out when I saw the final bill, but I figured that a good chunk of that is going to the foundation, so what the hell, I’m a happy guy. Congratulations to Lucas and all the others who made this possible this year. I’m honoured to have been listed in the credits, given that I did so little this year to help. Important update: I just heard back from Lucas that the reports are being printed at cost at Lulu; so €6 is the cost of printing the thing (€3 delivery on top for Europe), and nothing is going to the foundation. Also, lulu doesn’t cancel orders under any circumstances. Not saying that you shouldn’t buy it, only that you should only do so if you think it’s decent value for money. Categories: Creative App blogs
Kees Cook: using select on a fifoThe right way to handle on-going input from file descriptors is to use select(). All readable events are flagged (one such event is “end of file”, which is indicated by a 0-sized read()). For example, if we’re reading from file descriptor fd: fd_set rfds; int rc; FD_ZERO(&rfds); FD_SET(fd, &rfds); tv.tv_sec = 1; tv.tv_usec = 0; rc = select(fd + 1, &rfds, NULL, NULL, &tv); if (rc > 0) { char buf[80]; ssize_t got = read(fd, buf, sizeof(buf)); if (got < 0) { perror("read"); return 1; } else if (got == 0) { printf("EOF\n"); return 1; } else { printf("read bytes: %d\n", got); } }When dealing with sockets, the above loop is sane — EOF means the other end hung up and you’ll never get more data from the file descriptor. In the case of a FIFO, however, “0 length read” means there are no more FIFO writers — but more could attach later and continue feeding in data! The problem with this is that select misbehaves and marks the file descriptor as “EOF” forever. Only the initial select() call blocks until there is something to read — once it hits EOF, select will always immediately return, defeating the purpose of select(). One solution is to re-open the FIFO, but you might miss writers between your 0-length read() and the next open(). The seemingly correct solution is rather simple: the FIFO reader should open the FIFO as a writer also. In this case, select() never thinks all the writers have vanished, so there is never an EOF condition, and the reader never misses any writers. So, instead of O_RDONLY, use: fd = open(FIFO_PATHNAME, O_RDWR | O_NONBLOCK);Categories: Creative App blogs
MenTaLguY: The Adobe Flash Player DeadlockI don’t use proprietary software very often; one of the few pieces of proprietary software that I do use with some frequency is the proprietary Adobe Flash Player plugin. On a daily basis, it reminds me why I try to avoid proprietary software in the first place. One illustrative point: I’m sure most people who have used the plugin on Linux experienced occasional browser lockups when exiting a page which used Flash. I experience it frequently, and everyone I’ve asked has had the same issue. It’s been a problem with the 9.0 releases of the plugin for a long time, but Adobe’s never done anything about it. Either they don’t know, or they don’t care. I can’t rule out not knowing. I’d love to report the bug, but Adobe doesn’t provide an obvious way to do that without going through their “complimentary product support” channels—which require a registered Adobe product. All I want to do is put in a PR! Most open source projects are more receptive to bug reports (and that isn’t saying much). Of course, if I did put in a PR I couldn’t really be more specific than “the flash player sometimes deadlocks when tearing down a plugin instance, locking up the entire browser.” I don’t have the source available to me to examine the issue in any more detail, and the EULA I agreed to when installing the plugin is rather stringent about reverse-engineering, so it’s not like I could legitimately go in with gdb to see what the deal is either. This is hardly the only annoyance, either. Non-IA32 platforms have been left in the dust for a long time, and in recent revisions of the 9.0 plugin for Linux, there’s at least an additional livelock, worsening memory leaks, and severe performance regressions in the video pipeline. (Incidentally, if you’re having memory problems with Firefox, try removing the Flash plugin and see the kind of difference it makes.) If the Flash plugin were open source and the worst issues had remained unresolved for this long, I’d try to resolve some of them myself. I’ve got a decent amount of experience with concurrent programming, and more likely than not the issues are fairly straightforward. This is not because I feel any special obligation to Adobe to do their work for them. I’d be doing this for my own sake, and for the sake of the other people who have to deal with this stuff all the time. Adobe’s decision to open source their Tamarin JavaScript runtime had me hopeful that they would eventually also open source the Flash runtime (at least just the plugin), but their more recent decision to incorporate DRM into Flash is discouraging. They could still open source the non-DRM portions, but most likely my only hope for an open source Flash plugin is something like Gnash—which I can’t safely contribute to now that I’ve agreed to Adobe’s EULA for the proprietary plugin. In the long term the DRM decision is also likely to cut open source players off at the knees since their ability to play the most popular Flash content will be strictly limited. If Adobe isn’t going to give us an open platform to play Flash content, nobody else can either—is that it? Beacuse that’s the appearance it gives. You get it from Adobe, or not at all—and there’s an awful lot that Adobe simply isn’t providing. Thanks Adobe; you’ve managed to alienate another developer. I’m going to stick to authoring software and content for platforms whose vendors don’t play these kinds of stupid control games, so I don’t lock my own users into your twisted little world. Sun’s entirely open platform is looking much better these days, and they’ve finally got people working to address the gross deficiencies of Java applets that gave Flash its opening in the first place. I’ve done Flash development in the past—the reason Flash dominates right now is not because it’s great platform to use and develop for, but rather only because the alternatives have been so much worse. That circumstance is, thankfully, beginning to change. Categories: Creative App blogs
MenTaLguY: The Garritan Interactive Principles of OrchestrationGarritan has put together an online version of Rimsky-Korsakov’s classic book on orchestration. With commentary on the original text, and the ability to play back score fragments and follow along in your browser if you have Flash, it’s a really awesome resource. Categories: Creative App blogs
Dave Neary: links for 2008-03-08
Categories: Creative App blogs
Kees Cook: instaELF via GNU asToday I needed to generate a fake ELF file with specific section contents (I was testing “modinfo”, which expects to read the “.modinfo” ELF section). For future reference, here’s how to create an empty .ko file that claims to have a GPL license: $ cat <<EOM | as - -o /tmp/fake.ko > .section .modinfo > .string "license=GPL" > EOM $ modinfo /tmp/fake.ko filename: /tmp/fake.ko license: GPLCategories: Creative App blogs
Boudewijn Rempt - Krita: And even todayAn angry historian have published an "opinion piece" in my newspaper telling the world that heroes should be forgotten. English Auschwitz survivor dies The idea being, it's not the heroes, but the ordinary people who make history. Yeah, well... but who will inspire the ordinary people to do the right thing when they make history, if we don't have genuine heroes? Categories: Creative App blogs
Boudewijn Rempt - Krita: A Short History of A Young KingdomBehind the fold, because this is roleplaying stuff, background assembled for the fantasy roleplaying game campaign Irina and Eduard are playing in. I'll need to expand it: we've been playing this campaign for about a decade now. Categories: Creative App blogs
Boudewijn Rempt - Krita: Cross-platform to the rescueThere have been discussions all over the place about whether it would be a good or bad for the uptake of free software to make applications available for non-free platforms. Having complained in the past about the way my daughters' are forced to use Windows software for school, notably Microsoft Office. So, when Naomi told me today she had to download an application to do some music homework I was filled with apprehension. Turns out the chosen application was Audacity! Plus some instructions to download a precompiled lame ddl... Well, one apt-get install audacity later she's in business. Now if only there was a distribution that supports both sound and a usb wifi stick for her laptop, she wouldn't have needed to borrow her sister's laptop. Lesson learned: cross-platform applications make the update of a free platform possible, even if the powers-that-be still live in benighted obscurity. Categories: Creative App blogs
Boudewijn Rempt - Krita: On being part of a publicity machineI doubt anyone but myself has noticed, but I've been blogging less and less lately. Partly because I've been really busy, but also because everytime I was writing an entry for Fading Memories I was thinking of whether it would help or detract from the KDE publicity machine that Planet KDE has become. I have always maintained that since I never asked for syndication on any planet, I didn't care whether what I wrote fit in or not. If I blog about Easter, and it gets syndicated and the Gnome games maintainer complains in the comments section about me bringing religion in the public realm, I couldn't care less. After all, he has blogged about his religion and got his blog syndicated on Planet Gnome, too. But on the topic of KDE, KOffice I feel the curious urge to constrain myself end exercise restraint unless I've got another gosh-wow-bang-zip innovation to report. And that may well be counter-productive: when I started working on Krita in 2003 nothing worked and the project was nearly dead. A powerful stimulant. Bart Coppens recently said on IRC how the fact that even the line tool was broken gave him the courage to try and hack on Krita. Adrian Page got sucked into hacking on Krita because I was too dim-witted to make free-hand painting work. Admitting that there are problems, that things are broken and need fixing can be a powerful inducement for people to start helping out. When Bart Coppens told the audience at Fosdem that it seems likely that only a tiny fraction of the KOffice applications might make it for 2.0 release of KOffice, we noticed quite a few people dropping by on irc and asking us what they could do to help. So: people, there is plenty left to fix in KOffice. There are plenty of interesting but not too hard things that you can pick up. There are quite a few quite patient people around on the mailing lists and on irc who are prepared to spend an evening helping you get started. And -- we're still committed to making something that's fun to work on, fun to with and that will really boost your capabilities as a coder. Categories: Creative App blogs
MenTaLguY: PantoGraphPantoGraph is a prototype 3d rendering engine that outputs SVG and is implemented as a Blender Python script. (Hat Tip: BlenderNation) Categories: Creative App blogs
MenTaLguY: New Public KeyMy PGP keys expired recently; the new public key is available from the usual place. The fingerprint of the new key should be E829 4985 45A1 5870 7239 A6FF 1293 0555 EF78 AF6E. Those with whom I’ve been maintaining key trust relationships, see me offline about signing. Categories: Creative App blogs
Dave Neary: links for 2008-03-07
Categories: Creative App blogs
Dave Neary: Idea of the dayWouldn’t it be cool for GNOME to have partnerships with bookshare.org and Project Gutenberg? How about integrating evince to provide books for download? Categories: Creative App blogs
Dave Neary: LinkedIn group topping outThe GNOME LinkedIn group has finally calmed down - over the last 2 days I have had 12 requests to join (just approved) to bring the total number of members to 277 members, just a week after announcing it! I expect to top out around 300 members next week. And we’re an international bunch! A quick sample showed: 53 from the USA, 24 from the UK, 17 people from India, 13 from France, 13 from Spain, 10 from Italy, 9 from Brazil, 4 from Chile, 4 from China, but only 3 from Germany! And half the members come from outside those countries (for those whose countries aren’t mentioned, if you *really* want to know, say so in comments, I’ll tell you). It would be interesting to cross reference this group of GNOME fans with others we have - the GNOME map, the Facebook group, and even GNOME Foundation members Not to mention the SVN committers list… Categories: Creative App blogs
Ted Gould: SCALE RoundupThis is a little late, but I wanted to write about SCALE, one of my favorite Linux conferences. It is laid back, but well organized. It is small, but has interesting speakers. It is fun; simply it's fun. We usually have an Inkscape booth at SCALE, and this year we did it again. It's always interesting to meet people and either introduce them to Inkscape, or hear how they're using it. This year we decided to hold a sticker contest so that we'd have a give away at the booth. There were lots of great designs, but because of a mix up with the printer we didn't actually get them at the booth. Kinda sad. Another thing that was different this year is that SCALE featured a "Try-it" lab. This was a lab set up with 20 thin clients to allow conference goers to actually play with some of the things being talked about at the conference. We were able to get four slots, and Josh taught four classes that I heard nothing but good things about (I had to man the booth). There was video taken of at least one of them, so I hope that gets online (and is useful) here soon. This year I also gave a talk called The Ubuntu Desktop: Bling for Usability which focused on the fact that much of what is called bling or eye candy today does have a purpose, and will probably be the expected feature of tomorrow. After last year where my talk went embarrassingly long I managed to make this one too short. Which was okay, but I think everyone in the audience checked their watch as soon as my questions slide appeared on the screen. One of the most interesting things I learned this year was from the folks at Open Streetmap. Turns out that all of the tiles in their database are made using Inkscape. Apparently they have a project called Tiles@Home which does distributed rendering using Inkscape instances all over the world. They joked, but I think it's likely they're correct, that they're the largest group of Inkscape users anywhere. SCALE is a fun conference where it's good to meet up with old friends and make new ones. Even though I'm moving, I hope to attend next year as well. Categories: Creative App blogs
Ted Gould: Green WindowsSo I wanted to get a couple USB-to-Serial cables for doing some debugging today, and I thought I'd run down to my local Best Buy and grab them because they said that they had them online. Grab some lunch too, it'll be fun. So after looking through the store in all the places that I'd expect, I asked someone. Then I followed him through all the places I just went to determine that they weren't there and looked in the computer to confirm that there were two in the store. After talking to a couple of other employees I was referred to the older employee who "knows everything." I explained the problem, we looked in one place, and when they weren't there I mentioned that they were in the computer and he turned to me: "The computer is wrong, we do not have them.""Shouldn't there be a..." "Do you know Santa Monica between Bundy and Centinella?" he interjected. (local streets) "Yes?" "There is a building there with big green windows. The man in the bottom, he has everything. He will have what you need." I thanked him and decided to get some lunch, not sure about whether I'd find the man in the building with green windows. After lunch, feeling curious, and having never been on a quest before, I decided to go. So I got off the bus at Santa Monica and Bundy and started walking towards Centinella. I'm not sure at all what to expect; but sure enough about half way down I see a building with large green windows. No signs. I cross the street and walk towards it. As I get closer, looking in the windows there are displays with everything from beige PCs to rack mounted KVM switches -- but still no signs. I walked in the door and the directory had all the suites listed, seemingly mostly filled by Doctor's offices. I found my way around to a door that looked to match where the displays on the front where. Inside was a single glass counter filled with various random computer things and with a man behind it. I explained what I needed, and he called to the back. Out came another gentleman with everything. I paid and the only name I know for the place is that on the receipt: "General Sales Equipment." So my advice to you is: go to the man in the bottom of the building with green windows, he has what you need. Categories: Creative App blogs
Kees Cook: swapping encryption, hurting your headLast week Soren helped me move my manually cryptsetup’d swap partition into the initramfs logic so that I could hibernate. Bottom line was:
Assuming your swap partition (in encrypted form) is stored at /dev/laptopvg/swaprawlv, and you want your accessible swap partition as /dev/mapper/swap, here are the above steps in detail: Doing step 1 is simple, we’re assuming the defaults from the cryptroot script above:
Step 2 hurt my head. Make sure you’ve unmounted your swap before attempting this, or you can destroy the partition contents. The parameters come from the cryptroot script again:
Step 3 is simple again:
Ta-da! Categories: Creative App blogs
|
|
|
| kde-artists.org© 2004-2006 Sponsored by Revelinux©
Powered by Drupal© |