Supporting audio codec Opus in Opera 12

So Opus was finally RFC’d and is a mandatory to implement codec in WebRTC. This is truly great stuff! Opus has long worked in Opera in fact, if your system gstreamer actually supported Opus.

So, since Firefox already supports Opus, how do you get Opus codec support in Opera web browser? Well, just install libopus, and you should be good to go.

GStreamer has to be compiled with support for it though, but hopefully most are. I made a bug in Arch Linux for them to fix it, hopefully it’ll get fixed very soonish now (although they were reluctant at the start).

I have Opus running and working in my Opera 12 here :-)

I wrote this a while ago in fact on myopera:

That does in fact work, and has since the since the stable release of gst-plugins-bad 0.10.23 back in 21st of February. That is, as long as Opera doesn’t already “know” it can’t play it (so it won’t feed it to GStreamer for playback). E.g. if you add ‘audio/ogg;codecs=opus’ to Content-Type or query for that via canPlayType(‘audio/ogg;codecs=opus’).

But if it’s sent with Content-Type audio/ogg like in that demo on Mozilla Hacks, it will feed it to GStreamer, which will play it if a) you have gst-plugins-bad 0.10.23 or newer, and you have libopus/opus installed. Many distros have not that at the time. :-)

Anyway, the keyword here is /native/ support, which Firefox 15 has, and we don’t. E.g., most people won’t get Opus playback out of the box.

Make colorgcc colors bright

I have a dark background in my terminal. For vim I always set background=dark, and that fixes the colors. However, I couldn’t find a way to stop colorgcc from being broken.

I didn’t find any answers using the search engine I use. So in the end I resorted to just reading the code, and lo’ and behold, that normally helps.

So open up that /etc/colorgcc/colorgccrc file that you found out was no help. It’s not documented in the file, but if you change the colors to say e.g. bright_blue instead of blue, it’ll work!

colorgcc is using Term::ANSIColor, and they take that, plus a few other bonus options if you’re interested.

In Ubuntu Linux it seems to work out of the box, but my work computer is running Arch Linux – so that might be why.

Anyway, hope that will make it findable in future when I have totally forgot how I did that. :P

Google’s DRM proposal

Google turned Evil, along with Netflix has submitted a proposal for Digital Restriction Management for HTML5. I’ve been more or less following the emails, and just saw a great reply by Hixie that I’d like to archive.

Of course, having a DRM «standard» doesn’t make any sense, because you’d need a proprietary plugin anyway – and then we’re straight back to flash! It just doesn’t work.

But as Hixies email made me remember, is that arguing like that will be wrong. Because you’re playing on their field, like DRM should be legitimate at all. But really, Digital Restriction Management has no value and shouldn’t be added even if we could solve the unsolvable cases:

A bit of context, Ian Hickson wrote:

It’s when you’re trying to prevent the user from getting to the content that it stops making any kind of sense.

To which Mark Watson of Netflix replied:

Yes, I understand this does not make any sense to you. But it does to others. It’s a pre-requisite for services like Netflix to use HTML5 instead of plugins.

W3C needs to decide whether to work on making that a possibility, or whether HTML5 is simply not going to be a suitable technology for our segment of the industry, which would be a shame.

And Ian Hickson replied back:

No, Mark. The shame is that people’s rights are being taken away by paranoid content producers who don’t trust their users, and that there are any software engineers willing to do this for them. And shame is absolutely the right word for this.

It is morally wrong to deprive users the ability to time-shift or format-shift content they have paid for.

It is morally wrong to deprive users the ability to reuse content they have paid for purposes of parody.

It is morally wrong to deprive users the ability to criticise content they have paid for.

DRM doesn’t stop copyright violations, and is unnecessary for the purposes of selling media (indeed it seems to actually reduce total sales). The music industry figured this out a few years ago. Your industry will figure it out eventually too.

That’s the true crux of the matter!

BTW, a bit fun that Hixie is also Google, but they’ve allocated resources on this, so the DRM is the corporate direction. Hixie is an employed smart guy.

Workrave, with no fake microbreaks

I’ve been using Workrave to help me remember to take breaks from the computer. I always end up not using it after a while though.

That’s because I get irritated by it because it gets frustrating after a while. I’ve always been a bit too optimistic about my breaks. Specifically because the program comes with an insane setting as standard.

However, this time I’ve set the settings to:

  • One two-minute microbreak every hour.
  • One ten minute break every three hours.
  • Eight hour PC-time, give me one extra hour three times if I ask for it.

Hope I’ll use it for a longer time now.

A key press is an activity!

I quickly found another of my common irritations after using it. Workrave is not detecting my keypresses properly, so even though I am sitting at the computer, it thinks I’m not.

This especially happens with the microbreaks, they never seem to actually work. I’m very often reading stuff on the screen, only pressing “Page down” button once every 10 seconds.

The reason Workrave behaves so strangely is because it uses an algorithm like this:

  • Get keyinput / mousemove or whatever
  • If mode is MODE_IDLE:
    • Set mode MODE_NOISE
    • Set last_time to now
  • Else if mode is MODE_NOISE:
    • If last_time is more than ACTIVITY ms ago, set mode to MODE_ACTIVE.

So, as you see, there’s a config setting ACTIVITY that messes things up. The code is not exactly like that, but close enough.

Anyway, when I found out that, I was happy. Easy fix!

But not so easy anyway. I saw there was a config system going on there, and tried finding the workrave.ini file residing in .workrave/. Sadly, I couldn’t find it, so I made it, with:

[monitor]
activity=0

Ok, that worked. It dumped a whole lot of new config options into that file, and when restarting Workrave, it stopped working. That was probably because many of the options were truly bogus.

Instead of fixing it, — I found out that my default config provider was gconf, so I rather did it that way.

The real fix

Opening up gconf-editor, I browsed to apps/workrave and inputted "monitor/activity" as an integer with value 0.

Restarting Workrave, and lo! It resets the counter when you press one button, just as I wanted!

Other irritations

It also doesn’t react on the mouse when it’s moved less than 3 pixels from where it was. That’s hard coded, so you’d have to change the source and compile it.

Another thing is that with the settings I have, which is 2 minute microbreak every hour, it’s still way too easy for it to register my 2 minute break when I did in fact not use it. It’s very possible for me to read a full screenful of a text (and think hard about it), or watch a video for over 2 minute.

Workrave has it’s own «reading mode» button for that. However, I don’t like that because

  1. I have to remember it
  2. It’s not easily accessible
  3. I have to remember turning it off

I could fix something with point 2 and Workrave’s dbus integration. But, well, it’s still a drag.

I think maybe we could raise the IDLE-time limit. These are the default limits:

NOISE = 9 seconds
ACTIVITY = 1 second
IDLE = 5 seconds

So we know what ACTIVITY is, I’ve set that to 0, so that it doesn’t need 2 events 1 second apart in order to register activity.

NOISE is how long until it waits until it sees a new keyboard input resets its ACTIVITY-lookup. Having that as 9 seconds is OK for me now that I’ve set ACTIVITY to 0.

IDLE is the time it waits until it starts counting. I’m not too happy with it at 5 seconds. I’m using Workrave with much bigger time lapses, so it should be really be upped.

I’ll put IDLE at 60 seconds, so that it won’t start counting IDLE time unless I’ve been off the keyboard for 60 seconds. So this will still make me take my 2 minute microbreak when I’m not touching the computer for 3 minutes, but it won’t happen as often.

So opening up gconf-editor and going to apps/workrave/monitor, and then inputting idle with integer value 0 will fix it.

And then Workrave is better to use!

Nicer pdf2png, with poppler

Updated: so poppler now includes pdftocairo which does this. No need to do this anymore! Blog post here for reference.

I’ve been using convert from ImageMagick to convert PDF-files to png files. However, they’re butt ugly, or rather fugly. So I created a pdf2png script / python program to do it better.

Just look at the text here from convert:

Rather ugly. Look at the kerning. It’s truly horrible.

Not to say poppler doesn’t have its share of problems, but it looks rather much better, don’t you agree?

So, since I had to manually edit a presentation I had to use some time making a PDF-to-PNG converter since I couldn’t find another pdf2png.

So without further ado, here is pdf2png.py (updated to use cairo as Raimund posted code for in comments, also updated with width+height extra params):

#!/usr/bin/env python
 
import poppler
import cairo
import gtk
import urllib
import sys, os
 
width = height = 0
 
if len(sys.argv) != 2 and len(sys.argv) != 4:
    print("Usage: %s <filename> [width height]")
    sys.exit()
 
if len(sys.argv) == 4:
    width = sys.argv[2]
    height = sys.argv[3]
 
input_filename = os.path.abspath(sys.argv[1])
output_filename = os.path.splitext(os.path.basename(sys.argv[1]))[0] + '-%.2d.png'
 
doc = poppler.document_new_from_file('file://%s' % \
            urllib.pathname2url(input_filename), password=None)
 
for i in xrange(doc.get_n_pages()):
    page = doc.get_page(i)
 
    if width and height:
        surface = cairo.ImageSurface(cairo.FORMAT_ARGB32, int(width), int(height))
        ctx = cairo.Context(surface)
    else:
        surface = cairo.ImageSurface(cairo.FORMAT_ARGB32,
                int(page.get_size()[0] * 2), int(page.get_size()[1] * 2))
        ctx = cairo.Context(surface)
        ctx.scale(2, 2)
 
    page.render(ctx)
    ctx.set_operator(cairo.OPERATOR_DEST_OVER)
    ctx.set_source_rgb(1, 1, 1)
    ctx.paint()
    surface.write_to_png(output_filename % i)

It’s very far from perfect. Note the hard coded height and width, all of these things are possible fixes. Not anymore! The default should be sensible now, or you can force it with arguments. I didn’t find any python-poppler documentation, but I used C++-docs instead, they were helpful enough.

If you do any improvements (thanks Raimund) or just use it, it’d make me happy if you told me in a comment. :-)

Dog slow nautilus file copy, or SD card

So. Downloading the 1.4GB file was humming along at 10MiB/s. It went very fast. Helene’s computer is constantly crashing, some hardware error (must be, crashes/hangs are too random), so I was going to transfer it to her via SD-card.

So, put it in. SDHC-card no less, not the slow ones. Guess what rate I got?

Yes. 1MiB/s. Oh my fscking god. Unbelievable. It’s so slow.

As if that wasn’t enough, the file copying is really killing my entire computer. I mean, 9 in load – and a completely frozen machine for almost a minute. Are you kidding me? Have we really not come further?

I’m appalled. File IO is scheduling for desktop should really be fixed. Yes-yes, I know I’m championing for both better latency and better throughput, but puhleeze. Doing stuff over the internet is so goddamn fast and doesn’t hang the computer.

Can we get some of that for removable storage as well? Please?

Lexmark drivers are pure puke/crap, demond, what is it doing?

So, if you’re trying to debug you girlfriends computer (or maybe I should say significant other) and wonder what the thousands of daemond-lines in your syslog is all about, it’s lexmark’s evil printer drivers.

So my little girl has taken a stroll on the big intarwebs and found much the only crapware that actually exist for Linux, and installed that. I guess a lot of people who don’t have a clue, just uses Linux because Someone(tm) put it on their machine, fall for that crap.

Lexmark doesn’t want to play fair, they have big, huge, proprietary software for printer drivers. It’s continiusly printing garbage to syslog, and it’s polling everything it can find every five seconds. Basically, it drains your battery, eats your ram and fills your disk with crap.

That’s not mentioning the cycles the crapware written in Java is also stealing from you. So, how to remove it?

sudo  apt-get remove lexmark-legacy-wsu lexmark-inkjet-legacy-wjre

The above line didn’t actually work. apt-get puked on it. So in the end I just did:

sudo dpkg remove lexmark-legacy-wsu
sudo dpkg -P lexmark-inkjet-legacy-wjre

That worked AFAIK.

So, now I know how terrible Lexmark really is. I already knew they’re drivers looked like a monster (and what the hell, I have to FIND drivers for the printer to work? Normally everything Just Works in Linux, but not so with craptastic proprietary shit-drivers).

I actually told my off parents after they bought a Lexmark printer a year ago. That’s a mistake they’ll never do again…

I’ll paste some of the syslog so that it’s nice and searcable:

Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 234  main                 -- Checking for USB scanners...
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 79   getScanners          -- ::::::::::::::: METHOD START ::::::::::::::: 
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 79   getScanners          -- ::::::::::::::: METHOD START ::::::::::::::: 
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 213  getUsbScanners       -- ::::::::::::::: METHOD START ::::::::::::::: 
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 221  getUsbScanners       -- finding attached HID devices...
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 221  getUsbScanners       -- finding attached HID devices...
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 131  getHidDevices        -- ::::::::::::::: METHOD START ::::::::::::::: 
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev0. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev1. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev2. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev3. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev4. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev5. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev6. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev7. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev8. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev9. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev9. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev10. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev10. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev11. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev12. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev12. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev13. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev13. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev14. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev15. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev15. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev0. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev1. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev2. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev2. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev3. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev3. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev4. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev5. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev5. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev6. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev6. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev7. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev8. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev8. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev9. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev9. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev10. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev11. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev11. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev12. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev12. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev13. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev14. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev15. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev0. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev0. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev1. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev1. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev2. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev3. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev3. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev4. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev4. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev5. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev6. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev6. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev7. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev7. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev8. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev9. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev10. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev11. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev12. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev13. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev14. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev15. No such file or directory
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 197  getHidDevices        -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 223  getUsbScanners       -- total HID devices found: 0
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 226  getUsbScanners       -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 92   getScanners          -- getUsbScanners successful
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/discovery.c : 125  getScanners          -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 240  main                 -- usb scanners found is 0
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 309  main                 -- End of checking for USB scanners.
Jul 28 22:53:50 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 309  main                 -- End of checking for USB scanners.
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 234  main                 -- Checking for USB scanners...
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 79   getScanners          -- ::::::::::::::: METHOD START ::::::::::::::: 
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 79   getScanners          -- ::::::::::::::: METHOD START ::::::::::::::: 
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 213  getUsbScanners       -- ::::::::::::::: METHOD START ::::::::::::::: 
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 221  getUsbScanners       -- finding attached HID devices...
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 131  getHidDevices        -- ::::::::::::::: METHOD START ::::::::::::::: 
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev0. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev1. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev2. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev3. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev4. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev5. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev6. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev7. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev8. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev9. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev10. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev11. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev12. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev13. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev14. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev15. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev0. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev1. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev2. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev3. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev4. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev5. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev6. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev7. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev8. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev9. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev10. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev11. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev12. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev13. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev14. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev14. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev15. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev15. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev0. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev1. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev2. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev3. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev3. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev4. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev4. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev5. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev5. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev6. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev7. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev8. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev9. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev9. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev10. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev10. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev11. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev11. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev12. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev13. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev14. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev15. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 197  getHidDevices        -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 223  getUsbScanners       -- total HID devices found: 0
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 226  getUsbScanners       -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 92   getScanners          -- getUsbScanners successful
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 125  getScanners          -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 240  main                 -- usb scanners found is 0
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 309  main                 -- End of checking for USB scanners.
n opening HIDDEV file: /dev/hid/usb/hiddev12. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev13. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev14. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev15. No such file or directory
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 197  getHidDevices        -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 223  getUsbScanners       -- total HID devices found: 0
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 226  getUsbScanners       -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 92   getScanners          -- getUsbScanners successful
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/discovery.c : 125  getScanners          -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 240  main                 -- usb scanners found is 0
Jul 28 22:54:10 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 309  main                 -- End of checking for USB scanners.
Jul 28 22:54:28 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:7
Jul 28 22:54:28 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:8
Jul 28 22:54:28 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:8
Jul 28 22:54:28 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:9
Jul 28 22:54:28 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:10
Jul 28 22:54:28 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:11
Jul 28 22:54:29 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:7
Jul 28 22:54:29 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:8
Jul 28 22:54:29 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:9
Jul 28 22:54:29 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:9
Jul 28 22:54:29 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:10
Jul 28 22:54:29 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:10
Jul 28 22:54:29 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:11
Jul 28 22:54:29 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:7
Jul 28 22:54:29 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:8
{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:8
Jul 28 22:54:29 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:9
Jul 28 22:54:29 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:10
Jul 28 22:54:29 laska udevd[325]: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/99-lexmarklegacy-10.rules:11
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 234  main                 -- Checking for USB scanners...
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 79   getScanners          -- ::::::::::::::: METHOD START ::::::::::::::: 
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 213  getUsbScanners       -- ::::::::::::::: METHOD START ::::::::::::::: 
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 221  getUsbScanners       -- finding attached HID devices...
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 131  getHidDevices        -- ::::::::::::::: METHOD START ::::::::::::::: 
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev0. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev1. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev2. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev3. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev3. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev4. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev4. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev5. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev5. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev6. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev7. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev8. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev9. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev10. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev11. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev12. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev13. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev14. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/usb/hiddev15. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev0. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev1. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev2. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev3. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev4. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev5. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev6. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev7. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev8. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev9. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev10. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev11. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev12. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev13. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev14. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev15. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hiddev15. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev0. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev0. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev1. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev2. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev3. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev4. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev5. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev5. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev6. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev6. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev7. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev7. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev8. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev9. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev10. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev11. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev11. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev12. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev12. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev13. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev13. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev14. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 158  getHidDevices        -- failed in opening HIDDEV file: /dev/hid/usb/hiddev15. No such file or directory
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 197  getHidDevices        -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 223  getUsbScanners       -- total HID devices found: 0
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 226  getUsbScanners       -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 92   getScanners          -- getUsbScanners successful
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 125  getScanners          -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 240  main                 -- usb scanners found is 0
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 309  main                 -- End of checking for USB scanners.
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 197  getHidDevices        -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 223  getUsbScanners       -- total HID devices found: 0
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 226  getUsbScanners       -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 92   getScanners          -- getUsbScanners successful
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/discovery.c : 125  getScanners          -- ::::::::::::::: METHOD END ::::::::::::::: 
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 240  main                 -- usb scanners found is 0
Jul 28 22:54:30 laska demond: [P:1171 T:-1215858992] src/demon.cpp   : 309  main                 -- End of checking for USB scanners.

Update: if you don’t want to remove the drivers, just stop the insanity. Dirk has a good solution for you:

You might be interested that I found a solution for this problem. In short: create a wrapper script for demond that sets ENABLE_D_LOG=0 before calling the original demond.

New release 1.2 of remove_domain_part plugin for WordPress

When I put the plugin and howto guide out for how to make WordPress multisite work without WordPress monopolizing your main domain, I thought it’d maybe help one or two people a year. However, in this short amount of time I’ve gotten quite a few people looking at it.

So I’ve been fixing bugs and problems they’ve come up with. I just released version 1.2 of my remove_domain_part plugin which is a part of the full setup in the guide.

The changes from 1.0:

  • Frontend signup is now supported.
  • Works on more picky PHP installations.
  • Rewrites activation emails, removing any instances of REMOVE_DOMAIN_PART that it can find.

A better place

If people really start to use it, I should probably put it up on the WordPress plugin directory so that people can get updates and have a better place of finding the plugin.

I thought this use case was extremely small, and hence I didn’t want to invest any time in putting it correctly up. However, it might be beneficial now that I’m not the sole user of the plugin any more.

Howto use subdomain WordPress Multisite 3.x without dashboard site?

So I wanted to log in to write about how to set up WordPress 3.x multisite to work with subdomains but the main site NOT running WordPress. Seriously, if you are okay with running WordPress on your main site (not only on subdomains), this guide is not for you. If you’re that girl, you’d want to check the normal network installation instructions.

WordPress is made to control the “host site”, so having this setup is speciality. I couldn’t find guides on doing this, so I’ve burned incredibly much time on it.

My setup (what I want to do)

  • I have a site; example.com, where I run a django site (or whatever else that’s NOT WordPress).
  • I want to have subdomain WordPress Multisite install, so I want myblog.example.com and yourblog.example.com.
  • I also want to have custom domains where I own it, so instead of using yourblog.example.com, I want to use yourblog.net.

So those three points should be easily doable, at least it sounds like an easy and nice requirement. Well, it was not so easy, but hopefully it’ll be easier with this guide.

Obviously you need to install WordPress, and set it up to be a Multisite-install. I’ll refer the normal steps here, but use the Create A Network instructions on the WordPress codex for a more fleshed out guide.

If you use the Codex-guide or have already set up WordPress Multiuser, add the two lines from my step 5 and start from step 8.

HOWTO

  1. Setup a normal WordPress blog. You know this. Install it normally. I set mine up as wp.example.com, this will be my dashboard site (so, NOT example.com like the normal Multisite setup). Update it, if there’s updates for it (I had one, probably because I set nn_NO as language in WPLANG).

  2. When done, open up wp-config.php and add the following line just before “That’s all …”

    define('WP_ALLOW_MULTISITE', true);
    
  3. Go to Admin -> Tools -> Network. Choose subdomain, it will say like site1.wp.example.com and site2.wp.example.com, we’ll just have to fix that later.

  4. Ignore Wildcard DNS error. Make blogs.dir:

    mkdir wp-content/blogs.dir
    sudo chown www-data wp-content/blogs.dir
    
  5. Replace the WP_ALLOW_MULTISITE in your wp-config.php with the following (the last two lines are different from a normal multisite install):

    define( 'MULTISITE', true );
    define( 'SUBDOMAIN_INSTALL', true );
    $base = '/';
    define( 'DOMAIN_CURRENT_SITE', 'wp.example.com' );
    define( 'PATH_CURRENT_SITE', '/' );
    define( 'SITE_ID_CURRENT_SITE', 1 );
    define( 'BLOG_ID_CURRENT_SITE', 1 );
    
    define( 'NOBLOGREDIRECT', 'http://example.com' );
    $cookie_domain = '.example.com';
    

    PS In my current install, I did something very wrong, I didn’t make the dashboard site first, and so I had to change BLOG_ID_CURRENT_SITE to 9.

  6. If you use apache, add this to your .htaccess-file:

    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    
    # uploaded files
    RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L]
    
    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^ - [L]
    RewriteRule . index.php [L]
    

    However, if you’re like me, and use nginx, I use this rule to enable WordPress Multisite:

    location / {
        index  index.html index.htm index.php;
        rewrite ^.*/files/(.*)$ /wp-includes/ms-files.php?file=$1 last;
        if (!-e $request_filename) {
            rewrite ^.+/?(/wp-.*) $1 last;
            rewrite ^.+/?(/.*\.php)$ $1 last;
            rewrite ^(.+)$ /index.php?q=$1 last;
        }
    }
    
    location ~* ^.+\.(html|jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|ogv|ogg)$
    {
        rewrite ^.*/files/(.*(html|jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|ogv|ogg))$ /wp-includes/ms-files.php?file=$1 last;
        expires 30d;
        break;
    }
    
  7. Press the “login again” button on the install (or just login again :P).

  8. Install my plugin, Remove Domain Part (Direct download). All it does is to remove .wp. from the domains so that site1.wp.example.com becomes site1.example.com on blog installation (when you choose “New site”).

    1. If you use something else than .wp., you need to change it in the REMOVE_DOMAIN_PART definition in the plugin.

    2. Network Activate the plugin (if you don’t use fontend signups, you may choose to only activate it on the main site).

  9. Install WordPress MU Domain Mapping, follow the install instructions. Short version:

    1. Link sunrise.php (or merge if you’ve got it from before) to the wp-content folder. > ln -s plugins/wordpress-mu-domain-mapping/sunrise.php wp-content/
    2. Add define( 'SUNRISE', 'on' ); to wp-config.php.
    3. Network Activate it…
  10. And now for the small hack that will make domain mapping work again with our setup. Open up your wp-content/sunrise.php, and add this elseif to the last if-block (all the way at the bottom):

    elseif ( isset($cookie_domain) )
        define( 'COOKIE_DOMAIN', $cookie_domain );
    

    Many people error out here, check a example paste of their new sunrise.php someone in the comments did.

  11. Log in, go into Network Admin and set up Domain Mapping. The domains themselves you can map from the site admin pages, under Tools.


And now everything should work.

Musings about video, html, tech and linux