10. April 2014

PowerShell in Terminal of IntelliJ Idea

IntelliJ Idea has neat feature – Terminal Window.

Unfortunately on Windows it’s set just to old school cmd. Good news is that it’s possible to change it to something better. E.g. PowerShell.

Go to project settings, type “terminal”. Change value in Shell path to powershell.exe.

intellij-idea-powershell

Then you can invoke Terminal:

idea-terminal

Note: If you’re using 32bit version of Idea then it will open 32bit version of PowerShell. This is important when you want to change Set-ExecutionPolicy. 32bit and 64bit PowerShell have two different settings.

10. April 2014

Debian Heartbleed openssl bug remains even after upgrade of openssl package

If you’re using Debian and you want to get rid of Hearbleed bug then it’s not sufficient to upgrade openssl package.

The really important package is libssl1.0.0:

apt-get install libssl1.0.0

It will restart all services which depends on this package.

4. April 2014

Debian – Tomcat 7 is not serving https after upgrade

I made upgrade of Tomcat7 server on Linux Debian.

Tomcat stopped serving https. Port was open, no strange message in log, but it was not possible to connect from browser.

Here is configuration of https connector:

Connector port="8443" SSLEnabled="true" 
 protocol="org.apache.coyote.http11.Http11Protocol"
 maxThreads="150" scheme="https" secure="true"
 clientAuth="false" sslProtocol="TLSv1"

Long story short. Old version of Tomcat7 was using keystore from file /etc/tomcat7/keystore, but new version expects /etc/tomcat7/keystore.jks.

Simple fix:

cd /etc/tomcat7
ln -s keystore keystore.jks

Restart Tomcat. :-)

22. March 2014

Kivy – buildozer android debug failed with libstdc++.so.6: cannot open shared object file

Kivy is awesome library for developing GUI applications in Python.

It’s possible to build same application for desktop, Android or iOS. It’s something like Cordova/PhoneGap for JavaScript.

I was following Kivy crash course 2: Building an android apk tutorial recorded by Alexander Taylor.

I was trying to build application on Linux Debian for Android:

buildozer android debug

Build failed with quite strange message:

[mergemanifest] Manifest merger disabled. Using project manifest only.
     [echo] Handling aidl files...
     [aidl] Found 1 AIDL files.
     [aidl] Compiling 1 AIDL files.
     [aidl] /home/georgik/.buildozer/android/platform/android-sdk-21/platform-tools/aidl: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

BUILD FAILED

assets/private.mp3: /home/georgik/idea/kivytest/.buildozer/android/app/sitecustomize.pyo
Traceback (most recent call last):
  File "build.py", line 431, in 
    make_package(args)
  File "build.py", line 346, in make_package
    subprocess.check_call([ANT, arg])
  File "/usr/lib/python2.7/subprocess.py", line 540, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ant', 'debug']' returned non-zero exit status 1

The reason of this problem is not so obvious.

My operating system is 64bit, but Android build system requires 32 bit version of stdc++ library.

Fix is very easy. Just install lib32stdc++6 package :-)

apt-get install lib32stdc++6

If build is still failing, because of other missing libraries, then you can use online Debian package search to find missing dependencies: https://www.debian.org/distrib/packages

Other missing 32bit libraries are often libz, libncurses5:

apt-get install lib32z1 lib32ncurses5

12. January 2014

How to convert Geocaching GPX file to WPT for OziExplorer

The goal is simple: convert GPX file from Geocaching.com to WPT file for Ozi Explorer and keep correct encoding of Slovak, Czech and German special characters.
Install GPSBabel and iconv. Store following script to file convert-gpx2wpt:

#!/bin/bash

if [ -z "$2" ]; then
    echo "Specify input and output file"
    exit 1
fi

INPUT_FILE="$1"
TEMP_FILE="$1-cp1250"
OUTPUT_FILE="$2"

iconv -c -f utf8 -t cp1250 < "$INPUT_FILE" > "$TEMP_FILE"
gpsbabel -i gpx -f "$INPUT_FILE" -o ozi,pack -F "$OUTPUT_FILE"

How to use:

chmod a+x convert-gpx2wpt
./convert-gpx2wpt input-file.gpx output-file.wpt

More info: http://www.gpsbabel.org/htmldoc-1.4.4/fmt_ozi.html

You can also use online service for conversion (there is limit on file size): http://www.gpsvisualizer.com/gpsbabel/

8. January 2014

The story behind PF2014 – Cordova – slides


Slides available in formats: PDFSlideShare

6. January 2014

IntelliJ Idea – Cordova – Default Activity not found! – solution

Situation: import Cordova project with support of Android platform to Intellij Idea. You’re not able to start emulator, because of strange error:

Default Activity not found!

cordova-error-activity-not-found

One solution could be: go to File menu and choose Invalidate Caches /Restart.

This might not help.

The real problem is most likely in configuration of Android module. Open project configuration, select module and make sure that directory src is marked as Source.

cordova-error-add-sources

Confirm module configuration and error message should disappear.

28. December 2013

PF 2014

This year I have new game for you. :-)

Goal is simple: connect stars and create constellations.

There are 12 levels. Game begins with simple constellation. Each next level is harder and harder.

You can play this game on tablet, phone or computer.

Version for Android devices: en_generic_rgb_wo_45pf2014-qr-code

Web version:

screenshot-01

http://pf2014.sinusgear.com

Source code is available at GitHub.

Technological background: application is written in JavaScript and CSS3, no Cavnas. Used libraries: Cordova, AngularJS, jQuery, Font Awesome.

Constellation maps were created by Tracing Paper JS tool.

Check out older PF games:

I wish you all the best in year 2014. :-)

22. December 2013

Tracing Paper JS – tool for generating JavaScript coordinates from image

Tracing paper is common tool for illustrators and graphic designers.

I was searching for tool which is able to convert clicks on image into coordinates and use it in JavaScript.

Yes, you can use Photoshop or Gimp to determine position of point and then write JavaScript manually.

This is feasible when you have few coordinates which should be converted into JavaScript. When you have hundreds of those points then you’ll end up typing and typing all the day.

Here is the tool: Tracing Paper JS – http://tracing-paper.sinusgear.com

tracing-paper-01

Just click at the image and tool will record set of coordinates as JavaScript code.

It’s simple app written in JavaScript with AngularJS.

Source code is available at Github: https://github.com/georgik/tracing-paper-js

17. December 2013

Debian – upgrade from Apache 2.2 to 2.4 – Starting web server: apache2 failed!

Debian maintainers changed default Apache from version 2.2 to 2.4. Not a big deal?

I was just upgrading one package and it had dependency on whole new Apache. I said yes to upgrade, because I had no bigger issues with Apache upgrade in past.

Wohoo. This upgrade was very funny, because Apache 2.4 was not able to start due to conflicting configurations. The coolest part was that Subversion stopped working, but that’s different story.

The problematic part was that Apache failed to start with nice message:

[FAIL] Starting web server: apache2 failed!
[warn] The apache2 instance did not start within 20 seconds. Please read the log files to discover problems ... (warning)

I checked the log file /var/log/apache2/error.log, but there was no hint what went wrong.

Apache was working even though startup script reported error. :-)

After a while I found that there were some important changes in /etc/apache2/apache2.conf. I compared this file with /etc/apache2/apache2.conf.dpkg.dist.

It was necessary to update following lines in apache2.conf:

Mutex file:${APACHE_LOCK_DIR} default
PidFile ${APACHE_PID_FILE}
#LockFile /var/lock/apache2/accept.lock - disable this, old value

Then it was possible to start Apache without problem:

[ ok ] Restarting web server: apache2.
  • Babel fish

      Translate from:

      Translate to:

  • Where’s the fish?

  • Further info

  • Badges

  • Video channel

  • Learning

    lynda.com online training tutorials
  • Tags

  • Topics

  • Comments