272
I Use This!
Activity Not Available

News

Analyzed almost 3 years ago. based on code collected over 3 years ago.
Posted about 11 years ago
IntroductionThis hackweek I spent playing with joysticks in YaST and hwinfo (libhd).YaST already has a module for configuring joysticks, but I only supported Gameport joysticks which are quite obsoleted these days.AFAIK all recent mainboards do not ... [More] have gamport connectors (just a pin header) or the gameport is completely missing. And if you want to buy a joystick you will find only USB models anyway.There was a note in the YaST module that it only supports Gameport joysticks but some users find it confusing.So I decided to change the situation and do something interesting during my Hackweek project - to add USB joystick support to YaST.HackingThe support in YaST actually has three parts. YaST uses libhd (from hwinfo package) for hardware detection, than there is yast2-hardware-detection package which is a libhd wrapper converting C functions and data to YCP (the main YaST language) and finally there is yast2-sound package which contains the joystick configuration module.The first step was to add USB joystick support to hwinfo so it could be used for joystick detection. The problem was that hwinfo found the USB joystick device but it didn't know that it's a joystick and reported it as an unclassified generic USB device and also the joystick result was empty:# hwinfo --usb[...removed not relevant info...]12: USB 00.0: 0000 Unclassified device [Created at usb.122] Unique ID: JPTW.MyFI+3nAFw7 Parent ID: FKGF.4Nx_qoDfSd7 SysFS ID: /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.3/2-1.3:1.0 SysFS BusID: 2-1.3:1.0 Hardware Class: unknown Model: "KYE Flight2000 F-23 Joystick" Hotplug: USB Vendor: usb 0x0458 "KYE Systems" Device: usb 0x1004 "Flight2000 F-23 Joystick" Revision: "1.02" Driver: "usbhid" Driver Modules: "usbhid" Device File: /dev/input/event5 Device Files: /dev/input/event5, /dev/input/by-id/usb-0458_4-axis_8-button_joystick-event-joystick, /dev/input/by-path/pci-0000:00:1d.0-usb-0:1.3:1.0-event-joystick Device Number: char 13:69 Speed: 1.5 Mbps Module Alias: "usb:v0458p1004d0102dc00dsc00dp00ic03isc00ip00" Config Status: cfg=no, avail=yes, need=no, active=unknown Attached to: #8 (Hub)# hwinfo --joystick#So the detection code was there, it just needed small improvement. This was rather easy.Then I checked also hwinfo --joystick output, it was fine.Then I put an old low-end sound (Sound Blaster 128 PCI) with gameport into my PC and connected an old analog joystick. The old YaST joystick module worked fine I and I configured it.Then I checked  hwinfo --joystick output again and the analog joystick was not found. It turned out that the hwinfo code actually could never detect any joystick. So I also added Gameport support and fixed Gameport joystick detection.So at this point I had working joystick detection, but I wanted to improve it a little bit. I wanted detect and report some joystick properties, like number of buttons and axes it has. This turned out to be similar to mouse button detection which already worked fine. So again not a big problem.The detection part was ready, then I just added  passing joystick details into the yast2-hardware-detection layer so it could be used from YaST.The most complicated part was the YaST joystick module itself because it supported only gameport joystick and USB joysticks could not be simply added to the UI and also the internal structure had to be completely rewritten.The OutcomeSo what has been changed?The  hwinfo --joystick output will contain all detected joysticks (both USB and Gameport): # hwinfo --joystick 24: USB 00.0: 10d00 Joystick [Created at usb.122] Unique ID: o2Ga.iGyiCvRqXrA Parent ID: FKGF.4Nx_qoDfSd7 SysFS ID: /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.7/2-1.7:1.0 SysFS BusID: 2-1.7:1.0 Hardware Class: joystick Model: "KYE Flight2000 F-23 Joystick" Hotplug: USB Vendor: usb 0x0458 "KYE Systems" Device: usb 0x1004 "Flight2000 F-23 Joystick" Revision: "1.02" Driver: "usbhid" Driver Modules: "usbhid" Device File: /dev/input/event6 (/dev/input/js1) Device Files: /dev/input/event6, /dev/input/js1, /dev/input/by-id/usb-0458_4-axis_8-button_joystick-event-joystick, /dev/input/by-path/pci-0000:00:1d.0-usb-0:1.7:1.0-event-joystick, /dev/input/by-id/usb-0458_4-axis_8-button_joystick-joystick, /dev/input/by-path/pci-0000:00:1d.0-usb-0:1.7:1.0-joystick Device Number: char 13:70 Speed: 1.5 Mbps Module Alias: "usb:v0458p1004d0102dc00dsc00dp00ic03isc00ip00" Buttons: 8 Axes: 6 Config Status: cfg=no, avail=yes, need=no, active=unknown Attached to: #20 (Hub)25: Gameport 00.0: 10d00 Joystick [Created at input.316] Unique ID: pJ6W.6RgETWGhHg1 Parent ID: i_aO.F2uWXyTiEa3 SysFS ID: /pci0000:00/0000:00:1e.0/0000:04:02.0/gameport0/input/input58 Hardware Class: joystick Model: "Analog 4-axis 4-button joystick" Vendor: 0x0001 Device: 0x000f "Analog 4-axis 4-button joystick" Device File: /dev/input/event5 (/dev/input/js0) Device Files: /dev/input/event5, /dev/input/js0, /dev/input/by-path/pci-0000:04:02.0-event-joystick, /dev/input/by-path/pci-0000:04:02.0-joystick Device Number: char 13:69 Buttons: 4 Axes: 4 Config Status: cfg=no, avail=yes, need=no, active=unknown Attached to: #16 (Multimedia audio controller)The changes are highlighted: it correctly finds the joystick, reports number of axes and buttons, /dev/input/jsX device name is reported, game port joystick is found and for game port joysticks it reports also the sound card to which it is attached to.The changes in the YaST module are best described by the following screen shots. Let's start with the old YaST module:The old YaST module with one configured Gameport joystickWhen the computer doesn't have any game port the old module displayed just this message although an USB joystick could be attached.Old joystick test dialog, notice the wrong number of buttons and axes, also using progress bars is not appropriate for this dialogHere is the new updated YaST module:Both USB and Gameport joysticks are displayed with more details The testing dialog has been improved - button and axes detection is correct, sliders are used instead of progress bars and also the joystick name is displayed (usefull when there are more joysticks attached). This is quite a nice change, isn't it?As a bonus I have added hotplug handling into the joystick module - if you plug or unplug any USB joystick the table get refreshed. AFAIK that is unique feature among all YaST modules...All these changes have been submitted to  Factory/12.1 and should be available in 12.1-RC1 when released. [Less]
Posted about 11 years ago
The openSUSE Project announces the 1.0 release of the unique cross-distribution-capable, fully automated testing framework openQA. openQA is the only comprehensive testing tool which can run tests on every level of the OS, from core functionality ... [More] like the bootloader and booting the kernel up to testing applications like Firefox and LibreOffice. It shows the results in a convenient web interface and allows testers to see screenshots and even videos of the issues found. openQA is used to run nightly tests of the ‘Factory’ development repository for the upcoming openSUSE 12.1 release. openQA is available under the GPL version 2 or later. Software Testing is Hard Testing complex software is a crucial part of development. However, in-depth, frequent testing is difficult, time-consuming and boring. To ensure that software is tested regularly and predictably, automation is crucial. Many in-house tools which can test specific applications have been developed but there was no comprehensive testing tool for a full operating system until openQA. openQA does its work entirely hands-off and offers a convenient web interface with an overview of the results. With openQA developers can catch and fix issues in the development process much faster and thus ensure a more reliable product. openQA test overview openQA Makes it Easy openQA can test any operating system which is able to run in a virtual machine. By taking screenshots of the process and comparing these to reference images it determines if tests are passed or not. The OS-autoinst tool, part of openQA, controls the testing process by sending virtual keyboard and mouse events to the operating system being installed and run. It is able to respond to what is shown on the screen so it can handle a variety of issues while not having to stop the test. openQA determines if the installation of the operating system worked correctly and whether a number of applications started properly. At the end of the test, all images are encoded into a video for consultation by a human tester in case this is needed. A status overview of the tests can be shown in a web interface, currently available for the openSUSE Factory development repository on openqa.opensuse.org. openQA screenshot Coolo, openSUSE release manager noted: I’m thrilled to see the 1.0 release of openQA. openQA’s automated testing has been very beneficial to the stability of openSUSE Factory and I’m confident it can do the same for other Linux distributions openQA is Cross-platform Capable openQA is developed as two software pieces: OS-autoinst and the web interface. OS-autoinst right now supports Fedora, Ubuntu, Debian, FreeBSD and even OpenIndiana. It can be used to test even MS DOS and Windows systems. A number of videos on how openQA works can be found at this site The openQA web interface is openSUSE specific right now. It gives an overview of the status of all tests and allows the tester to look at specific screenshots of issues as well as video’s of the entire testing process. openQA test details openQA is Free OpenQA has been published under the General Public License version 2 or later. Installation instructions can be found on the wiki and the team is eager to hear feedback on openQA and use cases. Check out openQA in action on openqa.opensuse.org! [Less]
Posted about 11 years ago
ARMing openSUSE - 111011   So HackWeek VII has been and gone, but work has not stopped in getting our beloved Geeko some ARMs.   Now I'll be the first to admit, things have been a wee bit scrappy in places. This isn't anyone's fault ... [More] , it's just that we want to get things rolling ASAP. Thing is, we need more haste less speed; we need to be somewhat more concerted with our efforts. So instead of trying to get everything to build in one hit (would be great if that was possible), we are going to target patterns of packages.   With that in mind Joop Boonen was good enough to pull up a list of the packages required to build the Jeos pattern, I've added it to the wiki in a table to show the status of the required packages. If you would like to help out, look at the the Jeos Package List page and add your name in the column and when you submit a fix pop the SR number in too.   Once we have the Jeos list complete, we can then move on as each subsequent package set will build on this. Next up will be the Minimal X, after that we get onto the big bad boys of GNOME/KDE/LXDE/XFCE.   One item that is holding us back is hardware - we are encountering a whole heap of issues with Qemu, which takes time to resolve and as such takes time away from getting things working. So please help us out by donating as much or as little as you can to the effort.   [Less]
Posted about 11 years ago
Today is a really happy and exiting day for me. After one and a half years of work the ownCloud community just released the shiny new version 2 of ownCloud.ownCloud 2 has a great new userinterface, lot´s of exciting new features like calendar and ... [More] addressbook syncing, sharing of files, OpenID consumer and provider, a great new mediaplayer with an ampache interface, support for more installable 3rd party applications, a key value storage for KDE applications, integration of desktop notifications and a lot more cool and useful features.But the most awesome improvement we achieved is our fast growing, creative and friendly developer community. We have over 15 core developers now working on ownCloud and a lot more developer contributing translations, bugfixes, artwork or third party applications.Go to ownCloud.org to download your ownCloud to put it on your workstation or server or try our live demo at demo.owncloud.org. Ownloud is also available on all major Linux distributions but it´s designed to run on most webspaces withour special configuration.Let´s take our data back!dot.kde.orgownCloud.orgFrank [Less]
Posted about 11 years ago
This is a second post in a series I have planned about the language found throughout your search log – all the way into the “long tail” and how it might or might not be feasible to understand it all. My previous post, “80-20: The lie in your search ... [More] log?“, highlighted how the slope of “short head” of your search terms may not be as steep as anecdotes would say.  That is, there can be a lot less commonality within a particular time range among even the most common terms in your search log than you might expect. After writing that post, I began to wonder about the overall re-use of terms over periods of time. In other words: Even while commonality of re-using terms within a month is relatively low, how much commonality do we see in our users’ language (i.e., search terms) from month to month? To answer this, I needed to take the entire set of terms for a month and compare them with the entire set from the next month and determine the overlap and then compare the second month’s set of terms to a third month’s, and so on.  Logically not a hard problem but quite a challenge in practice due to the volume of data I was manipulating (large only in the face of the tools I have to manipulate it). So I pulled together every single term used over a period of about 18 months and broke them into the set used for each of those months and performed the comparison. Before getting into the details, a few details to share for context about the search solution I’m writing about here: The average number of searches performed each month was almost 123,000. The average number of distinct terms during this period was just under 53,000. This results in an average of about 2.3 search for each distinct term My expectation was that comparing the entire set of terms from one month to the next would show a relatively high percentage of overlap.  What I found was not what I expected. If you look at the unique terms and their overlap, surprisingly, the average overlap between months was a shockingly low 13.2%.  In other words, over 86% of the terms in any given month were not used at all in the previous month. If you look at the total searches performed and the percent of searches performed with terms from the prior month, this goes up to an average of 36.2% – reflecting that the terms that are re-used in a subsequent month among the most common terms overall. Month to Month Re-Use of Search Terms As you can see, the amount of commonality from month-to-month among the terms used is very low. What can you draw from this observation? In a brief discussion about this with noted search analytics expert Lou Rosenfeld, his reaction was that this represented a significant amount of change in the information needs of the users of the system – significant enough to be surprising. Another conclusion I draw from this is that it provides another reason why it is very hard to meaningfully improve search across the language of your users.  Based on my previous post on the flatness of the curve of term use within a month, we know that it we need to look at a pretty significant percentage of distinct terms each month to account for a decent percentage of all searches – 12% of distinct terms to account for only 50% of searches.  In our search solution, that 12% doesn’t seem that large until you realize it is still represents about 6,000 distinct terms. Coupling that with the observation from the analysis here means that even if you review those terms for a given month, you will likely need to review a significant percentage of brand new terms the next month, and so on.  Not an easy task. Having established just how challenging this can be, my next few posts will provide some ideas for grappling with the challenges. In the meantime, if you have any insight on similar statistics from your solution (or statistics about the shape of the search log curve I previously wrote above), please feel free to share here, on the SearchCoP on Yahoo! groups or on the Enterprise Search Engine Professionals group on LinkedIn – I would very much like to compare numbers to see if we can identify meaningful generalizations from different solution. [Less]
Posted about 11 years ago
Plasma Active brings a flexible, elegant, activity-driven user experience to a spectrum of devices. This article is part of a series of articles about different perspectives on Plasma Active. In the first installment, we look at a number of ... [More] applications that come with Plasma Active. Kontact Touch, Calligra Active, Bangarang and a collection of Active Apps provide a stable and powerful set of functionality, making Plasma Active suitable for personal and professional use cases. Email & Groupware: Kontact Touch In the area of groupware and email, Plasma Active really shines thanks to Kontact Touch, a mature groupware suite designed specifically for touchscreen interfaces. Kontact Touch has all the features already known from its desktop counterpart, among which a vast variety of connectors to groupware servers, among which Exchange and Kolab. For on-the-go use-cases, Kontact Touch’s offline features are a big win, making it easy to catch up on what happened during offline periods. Kontact Touch’s email client performs really well on the underpowered tablet, even for insanely large mailboxes with tens of thousands of emails. Since Kontact Touch’s underlying data cache, Akonadi also feeds its data into the Nepomuk semantic store, all the groupware data is not locked into an application, but naturally available in Contour, becoming part of your activities. Kontact Touch supports strong encryptions methods in an audible, open source code-base, satisfying even highly security- and privacy-aware use cases. There is a number of companies offering commercial support and services around Kontact Touch, and its integration in enterprise infrastructure. Kontact Touch with its touch-friendly ergonomic interface, feature set, scalability, groupware server compatibility and strong contender satisfying unique use-cases for enterprise and institutional use-cases, allowing to organically extend an organisations groupware infrastructure onto new devices. Office: Calligra Active Another highlight in Plasma Active is Calligra Active. In Plasma Active One, we ship it as a beta version, with a stable follow-up planned for one of the next releases. The first release of Calligra Active will be a capable, performant document, finger-friendly viewer for tablets that can pan and zoom smoothly and display office documents. Calligra comes with excellent support for OpenDocument and compatibility with many of Microsoft’s office applications such as Word, Excel and Powerpoint.With its capable engine, which is also part of the office suite on Nokia’s N9 and its touch-friendly user experience specifically built around Plasma Active, Calligra Active fills another important role by adding dependable office capabilities to Plasma Active devices.Calligra Active builds on top of Plasma Quick and semantic engine, bringing a seamless UX between your activities and documents. Web: Active Browser One of the most important applications on a device is the web browser. For Plasma Active, we have developed a touch-friendly and lean web browser that builds on top of WebKit for HTML rendering, and the kdewebkit integration for cookies, network and SSL, caching and cookie sharing. Some of its features, such as AdBlock could be re-used from the Rekonq project. It uses the bookmarks from Nepomuk and shares these with the Contour shell. Building a customized web browser for Plasma Active ended up being the way to go after we had looked at alternatives, such as making Rekonq touch-friendly, or using Fennec, since the work to adapt these browsers really well would have been too extensive. Designing the browser from the ground up allows us to have it perfectly integrate with the Contour workspace and the rest of the system (such as sharing login credentials with widgets or other apps). While the Active Browser provides already a basic set of features, it is still a first release, that being a central part of Plasma Active will see further improvements. There are many good things we basically get for Free through Qt Webkit, such as 100% ACID compliance, excellent support for CSS, good performance and stability and a lot of “just works” for many websites around. The Active Browser does not manage bookmarks itself. It rather makes the currently open page known to Share Like Connect, so you can bookmark a page from the top panel — or connect it to your activity and thereby collect links on the go. Keeping multiple pages open and organized is aided by the peek area at the top, where you can find open pages belonging to your current activity. Multimedia: Bangarang For all your multimedia needs, we have pre-installed a slightly adapted version of Bangarang. Bangarang comes with an elegant interface, it provides a stable and feature-rich media player. Bangarang also uses the Nepomuk semantic layer as underlying data store, so its knowledge blends in with the Contour workspace and other applications and widgets. Additionally, Bangarang supports retrieving meta data from various online sources, and adds this lyrics, information about artists to your movies and music to your media. This data is transparantly available in the Contour shell as well. The Now Playing widget can be used as widget in your actvity as a remote control, for example for skipping a song, pause, play. Widgets: Plasma Bangarang and the Now Playing widget show nicely, how the Activities in the Contour workspace extend and adapt for different use cases. Media can be controlled directly from the activity (more useful for music) or viewed and managed in a fullscreen app. The data is not locked into a single application, and neither is the user. Like Now Playing, there are hundreds of useful widgets already available, as many of them can be reused from other Plasma workspaces, such as Plasma Netbook or Plasma Desktop. We have pre-selected a number of useful widgets, such as notes, weather, calendar, clocks (Plasma is, after all about clocks!), and a few fun others. In principle, all Plasma widgets are installable also on Plasma Active. On top of that, with Plasma Quick, we’ve made it very easy to create new widgets, or adapt existing ones — more on that in a later episode. Traditional Applications Plasma Active comes with a number of powerful applications. These, roughly fall into three categories: Active apps, touch-friendly apps, and everything else. Since Plasma Active builds on top of a well-known Linux stack, many applications from this “eveything else” group are readily avaiable. Among these a huge number of command-line tools which can be used using the Konsole terminal application which we have adapted for on-screen keyboard input. Traditional desktop applications do run on Plasma Active as well, but they might or might not be suitable (or fun to use) on touchscreens. In our testing, we’ve seen varied success from simple showstoppers (“press space to start”) to flawlessly working and beautiful applications. Especially many games are well-suitable for Plasma Active, some even a lot more fun, such as KDiamond, Blinken, or . (You can tell, I’m not much of a gamer. :-))Qt and KDE’s refined, system-wide UI settings allow us to take a few general measures, such as ensuring minimal button sizes, suitable text sizes, etc.. As it’s easy to install all kinds of applications, we categorizes applications in categories to make it easier for the user to find high-quality applications.Active Apps are applications that are specifically designed or adapted to run in a Plasma Active environment. They work well on a given formfactor, are stable and functional, blend in well with the rest of the system (visually, but also through things like share like connect) and quality-controlled. Examples for Active Apps are the pre-installed webbbrowser, the image viewer, the news reader and of course Kontact Touch, our powerful groupware solution. Touch-friendly apps are a set of applications we have specifically selected to compensate for functionality we have not yet a Plasma Active app for. These apps might not be super-elegant, but do the job well and fill in important functionality. Konsole and kwrite are good examples here, those have been fixed to work well with an on-screen keyboard. A lot of games fall into the same category, there is a good number that work surprisingly well on a touch-screen (Blinken my four year-old nephew’s favourite, KDiamond is mine). Third Party applications Users or device vendors can extend Plasma Actives with more applications. Next to a large number of Free software applications, the Plasma Quick stack allows for development of proprietary applications, as its libaries are available under the LGPL license. This allow vendors to extend Plasma Active with product-specific components, and makes available closed source 3rd party components (such as Flash or Skype) on Plasma Active devices. Where do we go? Plasma Active provides a place for application developers to bring their creations to new devices. On top of a proven stack, Plasma Active brings the building blocks for easy creation of user interfaces, and easy deployment on the device. Plasma Quick allows to use high-level scripting languages such as JavaScript and Qt Quick’s QML and adds access to all kinds of data and information to widgets. Plasma Active is not just tied to Plasma Quick applications, but it is an open platform able acting as runtime environment for a number of applications. We are also pro-actively looking at new technologies, such as HTML5 WAC, so we will be able to serve as runtime for these applications as well. [Less]
Posted about 11 years ago
Plasma Active brings a flexible, elegant, activity-driven user experience to a spectrum of devices. This article is an overview of a series of blog posts I will be publishing over the coming days about different perspectives, or view points to Plasma ... [More] Active. As Plasma Active is a new user experience and integrated Free software stack for a range of devices, such as tablets, media centers, smartphones in-vehicle infotainment and $NEXT_POPULAR_FORM_FACTOR (tricorders, communicators, etc.).I will take the opportunity of our first release to explain Plasma Active’s underlying ideas in more detail. A series of blog will each tell the story behind Plasma Active from a different point of view. In the first installment, I’ll shed some light on the app story. We’ll look at Plasma Active’s answer to groupware, office and documents, multimedia and of course the web. In upcoming installments, we will look at Plasma Active’s developer story, its user story, its ODM and hardware story, and possibly more. With each installment, I will update the list below as the articles go online. The App Story The User Story (upcoming) The Developer Story (upcoming) …. [Less]
Posted about 11 years ago
Up; waded through mail all morning, fixed a Mac tinderbox issue or two on my branch, dug into an interesting unit test bug. Lunch. More jaw pain, hmm. Plugged away at some pre-conference collateral / slide-ware / bug fixing, mailing ... [More] etc. what fun. Dave over in the evening, good to catch up with his Venice trip, life & times quickly. [Less]
Posted about 11 years ago
Hackweek 7: Sysconfig Modification For WPA_GUI Enablement
Posted about 11 years ago
Hackweek 7: Open Source Client to Manage VMware ESX(i) Servers