Feeds:
Posts
Comments

Archive for the ‘Unix’ Category

I have finally found some time to play with the Raspberry Pi. Nothing spectacular; I have great things in mind for it, but for the moment I would just like it to take over the “solar” duties of the Asus EeePc that is running permanently (and hence providing a small heat source in the winter, right on my desk).

One of the first things I tried is prepping the Pi to run all that old Python USB stuff the SMA Sunny Boy requires me to use. My habit of trying to document my experiences as much as possible paid off: I just had to follow the instructions I wrote down myself in 2017 how to install an old pyusb package on Ubuntu – much to my surprise, they work flawlessly on the Raspbian 10 running on the Pi. Onwards to further testing!

Read Full Post »

I know I’m (very) late to the party, but nevertheless, here it is:

Welcome in my computer stable, Raspberry Pi!

Read Full Post »

Here in Europe, thanks to the surge in homeworking, there is no way to get your hands on a new webcam – they’re sold out everywhere. So I tried another solution for my older desktop machine running Xubuntu.

While installing Droidcam on Xubuntu, I encountered the following message:

gcc: error: make: No such file or directory

Strange, since I had just installed the complete GCC.

But while the GCC may have been complete, ‘make’ is a separate tool. The simplest way to install it is:

sudo apt-get install build-essential

It’s easy, once you know – but I can imagine that it’s not that easy if you’re not a developer (or a seasoned Linux user). But neither is getting Droidcam to work on Ubuntu, by the way – it takes a lot of tinkering to get it to work over USB, including the right developer mode settings on the phone as well as installing the ADB tools on Xubuntu with:

apt-get install android-tools-adb android-tools-fastboot

Now I just need a longer USB-C cable to position the phone above my desk rather than below it!

Can’t use this camera position in Skype – where’s that long cable?

As an aside: the lsusb on Xubuntu recognizes my Samsung Note 10+ as a “Samsung Electronics Co., Ltd GT-I9300 Phone [Galaxy S III] (PTP mode)“. I never connected my S3 to this copy of Xubuntu, so there must be another explanation for that weirdness…

Read Full Post »

As mentioned earlier, my ‘Grive2’ solution stopped working around November 25, and that is still true today. I have copied the daily updates by hand for a few days, but that is not a permanent solution.

That left me no choice: I needed to find another tool to replace ‘Grive2’. Luckily I had already been experimenting with ‘Jdrivesync‘ somewhere in 2018. The scripts I created at the time should still have worked today (I had kept everything in place), but a first attempt failed with an unclear exception message about OAuth.

Just to be thorough I checked the app access settings on my Google account. I found no sign of ‘Grive2’, just mention of an ‘Ubuntu’ app. So I thought: let’s get rid of that and try again. But that didn’t improve the situation. Strange, because in theory ‘Jdrivesync’ was now supposed to ask for a new authorisation key, and it did not do so.

Looking in my home directory on the Xubuntu I quickly found the culprit: the file .jdrivesync does contain the accessToken and refreshToken required by Google/OAuth. Deleting the file finally did what I wanted: Jdrivesync requested a new authorisation code and ran as it is supposed to do. Nice, although I should point out that Google again complained about not having verified Jdrivesync and did I really want to continue whit that app? Of course I do!

Now I just have to adapt crontab ;-)

PS. I will also keep an eye on the ‘google-drive-ocamlfuse‘ project. That would allow me to mount the Google Drive file system on the Xubuntu machine, giving me an opportunity to learn how to use rsync… But that’s for another time!

Read Full Post »

I have been using Grive2 for a couple of years, to help me get the numbers from our photovoltaic panels into Google Drive storage. That has been going very well… until today.

The new or updated files from my panels did not show up today, although they had been created correctly on the EeePC. When I tried the Grive2 synchronisation by hand, the tool reported a 401 error: access not allowed. I suspected an issue with the Apps authorisation for the Google account concerned, so I deleted the existing ‘grive’ App and launched a new registration request. Alas, to no avail; this is what Google had to say:

Why, oh why, Google?

All I can say is: come on, Google! This has been working fine for a couple of years – why cut it off now? If you really had to cut off access, why not alert the its users first? And what is “temporarily”: a day? a week? forever?

I will copy the files by hand for a few days, but that solution won’t last long. After all, we automate processes so we don’t have to remember doing them, the more so when the process is tedious. Copying files by hand is tedious, and error-prone too…

Read Full Post »

Raspberry Pi Gets Even Cooler

Where did they get their inspiration, I wonder?

More details can be found on TechCrunch: “The Raspberry Pi store is much cooler than an Apple Store“.

Read Full Post »

We’re six years later, and I still haven’t gotten around to any kind of “Tinkering With The Raspberry Pi“. That does not mean that I still have to write down the production numbers from our solar panels by hand, however. The Asus eeePC, running Xubuntu and a bit of software a former colleague of mine and I hacked together, takes care of that. In doing so, it constructs a number of text files: one for each day, listing the current production in Wh every ten minutes, and one for each year, detailing the total production for each day. The backup of these files is made every day by a tool called ‘grive2‘ (but I’ll write about that later).

The setup works fine, almost all the time. But somehow the SMA Sunny Boy gets confused and creates ‘yearly’ files for years other than the current calendar year. Those files are utterly useless and clutter the hard disk as well as the backup, so I decided to get rid of them automatically. To prepare for the first days of a new year, the script should also be able to leave the file for the previous year in place – there may be two valid ‘yearly’ files in January, should I fail to archive the old year on New Year’s eve or on Jan. 1st.

To exercise my *nix shell skills, I decided to do that in ‘bash‘ rather than extend the current Python tools.

As is my habit, I decided to start with a demo script that does what I want on dummy data. For demo purposes the JDoodle website is a great resource, at least for ‘bash’ scripting (I did not try any of the 67 other languages available on the site). This allowed me to work on the code on my Mac-with-big-screen, and take the necessary screenshots for this post.

Here is the code I came up with:

Click on the image to get it in the form of a PDF file,
ready for copy/paste operations.

Nothing spectacular, as shown by the output. Now all I have to do is turn this into a little non-demo script and add it my crontab on the eeePC… Come and see in six years or so ;-)

PS. I’m just dabbling in bash scripting, so if there are better solutions for my problem, don’t hesitate to explain them to me, please.

Read Full Post »

Just so I don’t forget it myself: I’m using Grive2 to backup a few hundred files to Google Drive from the little Asus portable. Why? Because I finally took the time to automate the daily readout of our solar panels on that little Linux machine, and I don’t want to lose that information (one little file every day!) should anything happen to the portable.

I found the instructions on how to install and use Grive2 here: “How to sync your Google Cloud on Linux with Grive2“. Basic stuff, easy to execute: ideal for an eternal beginner like myself ;-)

I had to change the crontab entry, because the line in the example wasn’t working for me. I replaced the ‘grive -path /home/wouter/somedirectory‘ part of the crontab entry with ‘cd /home/wouter/somedirectory && grive‘. And that did the trick.

There are other solutions, of course, but this was sufficient for me, at least for now.

PS. Yes, I really should replace that machine with a Raspberry Pi… but that will have to wait until later.

Read Full Post »

It’s something I need to remember: how do I install an old PyUSB package on Xubuntu (or a similar Debian-based OS). Why, you ask? Because I need that old version 0.4.3 for the little script that reads the solar energy numbers from the SMA Sunny Beam.

Image of the SMA Sunny Beam monitor for our solar panel installation

The SMA Sunny Beam monitor for our solar panel installation

Luckily, it isn’t too hard to do. This is my context:

Step one is to make sure you have the required header files to compile the PyUSB package. So you open up a terminal session and execute

sudo apt-get install libusb-dev
sudo apt-get install python-dev

Step two: Extract the root folder and all the files from the PyUSB archive, and make that folder your current directory in the terminal session.

Step three: compile and install the package with this command:

sudo python setup.py install

That’s it. When all goes well, you’ll be able to verify the existence of two new files on your system, in a directory called “/usr/local/lib/python2.7/dist-packages“:

usb.so
pyusb-0.4.3.egg-info

Done!

Read Full Post »

Short Operating System News

I’m sorry to read that Cyanogen will stop its work on the renowned alternative to Google’s Android. I like CyanogenMod a lot, as evidenced by my writings on the subject. We’ll have to wait and see if LineageOS can replace it.

The good news: Pixel OS for Raspberry Pi. I should really get one… but then again: there are already too many computers on my desk!

Read Full Post »

A few weeks ago I had trouble with some of the sd-cards in my camera’s. Taking pictures was not the problem, but the cards would not show up in the Finder or on the Desktop of my Mac Mini. Having no clue as to why those cards remained invisible, I booted my preferred alternative: Xubuntu.

Again, the cards did not show their contents, but at least Xubuntu told me what was going on: “unknown filesystem type 'exfat'“. The cards were formatted in exFAT – I suppose the Fuji X20 did that. A quick search instructed me on what to do, and a few minutes later I could see (and backup) my photos. So for those of you who found themselves in the same situation, here’s “How to Mount and Use an exFAT Drive on Linux“. Easy and very useful!

Trying out my new smartphone ;-)

Trying out my new smartphone ;-)

Since then, somehow that same sd-card is now handled like any other on the Mac. Did the Mini need the latest MacOS update, or was it just the reboot that did the trick? I’ll never know, but I did learn again that Xubuntu (or Linux in general) is more than just a toy for IT geeks – it can be very useful. But you all knew that, no?

Read Full Post »

For my own comfort I am documenting this little (but essential) tidbit on my blog: How to “Remove Old Kernels In Ubuntu With One Command“. It’s a post from 2010, but it should work, according to the comments. I will admit, however, that I handled my current problem using the (manual) instructions I found on “Ask Ubuntu”.

Here's what I saw

Here’s what I saw (with a larger number)

I have been updating my system regularly, as it should, since the initial installation. Using the manual instructions mentioned, I managed to delete all 4.2 kernels and more.

Admittedly, I also issued these commands:

> sudo apt-get clean

and

> sudo apt autoremove

Yes, that last one uses ‘apt and not ‘apt-get‘ – that’s how it was spelled somewhere, and it cleaned up a lot of stuff! I’m not sure if it’s best or safest way to make sure you’re only running the latest installed kernel, though. I know Linux is for geeks <grin />, but I can’t help agreeing with one of the commenters on the post mentioned: “There’s no excuse Ubuntu doesn’t do some kind of automatic cleanup…“, or at least does so with a single, simple command or tool.

Read Full Post »

As predicted in my previous post, I installed the Ice application from the Peppermint Linux distribution on my Xubuntu PC. Although is part of the PeppermintOS distribution, installation in Xubuntu (and presumably Ubuntu as well) is quite simple. I followed the instructions from the Ubuntu Forums thread “How to get a program called “ice” from Peppermint OS 6“. In a nutshell (make that a real shell in your Terminal, please):

cd ~/Downloads
wget https://launchpad.net/~peppermintos/+archive/ubuntu/p6-release/+files/ice_5.0.1_all.deb
sudo dpkg -i ice_5.0.1_all.deb

For good measure, you should check the latest Peppermint OS release packages to make sure you have the latest stable edition of Ice – just replace ‘ice_5.0.1_all.deb‘ with the name of the latest version.

The link to my PVOutput.org site works OK in Xubuntu. But you must remember that all Ice-generated applications use the same cookies etc. as the Chromium browser they are based on. That may not be 100% what you need, but I haven’t yet found a solution for that problem (other than writing your own application).

Read Full Post »

A long time ago, say in 2011, I must have figured this out already: to boot an Asus EeePC from a USB memory stick or an SDCard, you have to proceed as follows:

Ignore the BIOS boot order, the boot menu overrides it temporarily, unless you want to boot from a USB stick every time it boots, changing it in the BIOS is not necessary. Just try it, instead of hitting F2 to go into the BIOS, hit Esc.

Every EeePC I’ve ever come across has the boot menu when you hit Esc, it is the easiest way to boot from a USB stick or SD card.

Start hitting the Esc key as soon as the machine boots: simple, and it works like a charm! Thanks, elliott678 !

Xubuntu_Logo.png

It has taken many hours installing and testing different Linux distributions, but I think I have found the successor to ElementaryOS and Ubuntu on my two old PC’s. Xubuntu turns out to be the most fluent Linux on the old 1MB PC, and that means it will be good enough for the EeePC as well, I guess. I will probably install different versions on both of them: 14.04 LTS is good enough for the PC. On the EeePC I tend to experiment a bit more, and since it has double the memory a more recent version should offer more opportunities to familiarise me with the specifics of the X-variant of Ubuntu… That could well be my first new year’s resolution: learning Xubuntu!

Read Full Post »

Local Linuxy Tidbits

Just a few small updates on the state of my two Linux machines.

I have an old desktop PC running ElementaryOS “Luna”. Unfortunately, I managed to damage the current configuration, probably by fiddling with /etc/fstab in an attempt to rescue an external USB hard disk that somehow got registered to be mounted automatically at startup. Luckily for me, rescuing the hard disk proved succesful before the Luna refused to boot. But I need to update the OS anyway – how about Freya?

My faithful EeePC is currently running Ubuntu 15.10. The update went flawlessly, and Ubuntu runs fine, even reasonably fast (faster than most of the previous releases). But as soon as I start the Workspace Switcher, it takes over the display without leaving me a chance to return to any of the running programs. Luckily, the programs continue to run and do what they need to do, but I resent having to force into a shutdown to regain control of the display and the keyboard. It is becoming clear that the memory is the limiting factor in this game – or does the error in Compiz indicate a limitation of the graphics card? Anyway, the machine is getting older, perhaps too old, so why not go for a “lighter” distro?

(Click the image for a larger version)

(Click the image for a larger version)

I have been reading a bit about lightweight Linux distributions. There is a wide choice, that much is clear. Since I’m just a light user of Linux and certainly not an expert, I have decided to try out Lubuntu on the PC. Lubuntu is supposed to be easy to install and maintain, yet less memory-hungry than Ubuntu. We’ll see. If it goes well on the old machine, I’ll replace Ubuntu on the EeePC as well…

Read Full Post »

Older Posts »