HTC one V


1. hands free & self unlock  at the end of the call. I use hands free, headphones&mic with wire, HTC original, came with the phone, I put the phone in the pocket & lock the screen, so when a call is over, it unlocks it self and then the phone going on the menu by random pocket touch...

2. forced sms spelling, next to language selection button defiantly  should be option for "no spelling"!

I use slang, or several languages in sms, and spelling just mess everything!
Almost nobody sms use for official stuff. I don't care how many grammatical mistakes I made,
 the important part the recipient understand my message!
It's a lame feature for most people, with hidden or non existing OFF switch.
If I find it, definitely will disable this feature!

3. sms sound can not be set by selecting a file. Why???
So I have to use a different app for sms, cause non of the default sounds are suitable...

4. ring tone , can be set by selecting mp3 file (GOOD),
    bud it's listed by the mp3 tags not by file names.

I have a large music mp3 library in a single folder (32GB micro sd card), and I gave another folder for a ringtones (10 files inside), Everything is mixed together, list is just very very large! And mp3 tags not sync with a file names, so searching for those 10 files is a Tragedy!!!

Moral dilemma:

I have no time play with tags... I love to listening for the music, I know ware may favorite music file's is, A don't care about tags... maybe it works fine for some one how have nothing to do in life... Or he edit tags as a type relaxation, after work... Or have only couple albums in the phone...

For People who sort music library by files, really good Android app "Folder player"!

5. Time zone ISSUE - (I believe it will be fixed sun)

Home Location shows the right time , bad the clock in the top right corner not. Solution - disable automatic time sync, and set time manually (it also will effect the home location time ). Phone time now ok, but app's get time not form one place, example sms listed not in the right order...
Incoming sms get's time form Home Location (so it's wrong), Outgoing form the phone. Sms list will look like the response send previously then the request.

6. FM radio - BAD, always jumping white nose, even in the City, no volume down feature during white nose, very annoying!
For Compare, Iriver Clicks in the same places - works just fine and even the place where radio signal is poor it has volume down control during withe noise

The newest "USER FRIENDLY TOPIC" - "let's hide file browser" - IT'S JUST SUPER IDIOTICALLY STUPID!!!! 


I tiered wait for fixes, I will do it by my self xda-developers.com , by by HTC...
I will post the results! Yet it is only decision! Friends did that, so it can be hard!



GIT getting started on Linux


If You start using GIT with a GUI, and did not study concept of GIT, most likely You using it wrong! Or if You trying to use it as some other software that You already know, most likely wrong idea to!
I tried a few git GUI's, and if You don know the idea how it should work, its definitely not obvious from the GUI! In Other cases GUI is just a CRAP and it's impossible to use it.

     Why GIT?   Tech Talk: Linus Torvalds on git (Youtube Video)

     GIT workflow...  Introduction to Git with Scott Chacon (Youtube Video)

Basic git config:

$ git config --global user.name "User"

$ git config --global user.email "user@mail.com"

$ git config --global color.diff auto

$ git config --global color.status auto

$ git config --global color.branch auto

$ git config --global core.editor "nano"

Global settings stored in file:

$ cat ~/.gitconfig

Adding a project:

Enter project dir and

$ git init

$ git status

Adding & Commiting:

$ git add file.c

$ git commit

Commit message list:

$ git log

Add all files to staging area

$ git add .

Helpful note for a people, who is not a vim fan's
To exit vim

Doing backup to a flash drive:

Enter dir where git remote will be created

$ git init --bare

Now back to project dir:

$ git remote add {nameOfTheRemote} {PathToRemote}
$ git remote add {nameOfTheRemote} \

Push to empty remote:

$ git push {NameOfTheRemote} {BanchName}

Push all branches to remote:

$ git push {NameOfTheRemote} -a

List remotes:

$ git remote -v

Get a source copy from remote

$git clone {PathToRemote}

List your available branches:

$ git branch

Create a new branch:

$ git branch {newBranchName}

$ git branch testing

Switch to a branch:

$ git checkout testing

Merge testing to master, make sure you are on a master branch:

$git branch



$ git merge testing

Delete a branch:

$ git branch -d {branchName}

$ git branch -d testing

Delete remote branch

$git push origin --delete {branchName}

Difference between HEAD and the index;
what would be committed if you "commit" now.

$ git diff 

A brief per-file summary of the above.

$ git status

Get info about your local folder content versus remote content

$ git remote show {nameOfTheRemote}

Check all branches:

$ git branch -a

$ git branch -r

Get updated from remote

$ git fetch

Show git branch chart:

$ git log --oneline --graph --all --decorate

Make "com" alias for "commit":

$ git config alias.com commit

Switch to your other branch:

$git checkout {branchName}

Show log with file'e change summary:

$git log --stat

Compare branches. What is in branch called "master" that is not in the "bug_fix":

$git log master ^bug_fix

Usually binary files excluded from source. With Git it can be done by make a file ".gitignore" in the project directory:

Content of gitignore
exclude file by extension:
exclude all folders named “Debug” in the soure tree:
exclude single folder:


If you want to create a patch file via "git diff" that can be applied using "patch -p0 < patchfile" use the following command:

$ git diff --no-prefix > patchfile

then apply the patch:

$ patch -p0 < patchfile

If you have an existing "git diff" patch file that was created without the "--no-prefix" option, you can apply that patch via:

$ patch -p1 < patchfile

this will ignore the default a/ b/ source prefixes.
To make a complete patch not only modified files bud new files to.
You have to staged all files for patch, you can unstage after you create a patch, don't have to commit!

$ git diff --no-prefix --staged > patchfile

Replace local branch "master" to the remote branch "master"

$ git checkout origin/master
$ git branch -d master
$ git checkout -b master

Visualize git repo with web gui

$ git instaweb

Git on server

$ cd gitproject.git
$ mv hooks/post-update.sample hooks/post-update
$ chmod a+x hooks/post-update
$ ./hooks/post-update

$ git diff master  main.h main.c file.h >>  main.patch
$ patch --binary -p1 < main.patch

After failed pull, if you decide to step back instead of resolving the comfits 
$ git reset --hard HEAD


lighttpd instalation & configuration on Debian Squeeze

Install package's: 

All dependencies:
libonig2 (version 5.9.1-1) will be installed
libqdbm14 (version 1.8.77-4) will be installed
libsqlite0 (version 2.8.17-6) will be installed
libsqlite3-dev (version 3.7.3-1) will be installed
libterm-readkey-perl (version 2.30-4) will be installed
libterm-readline-perl-perl (version 1.0303-1) will be installed
lighttpd (version 1.4.28-2+squeeze1) will be installed
php5-cgi (version 5.3.3-7+squeeze14) will be installed
php5-common (version 5.3.3-7+squeeze14) will be installed
php5-sqlite (version 5.3.3-7+squeeze14) will be installed
php5-suhosin (version will be installed       
sqlite3 (version 3.7.3-1) will be installed
php5 (version 5.3.3-7+squeeze14) will be installed

Enable fastcgi, by creating symbolic link:

# ln -s /etc/lighttpd/conf-available/10-fastcgi.conf /etc/lighttpd/conf-enabled/10-fastcgi.conf

 10-fastcgi.conf need's to be updated:

$php-cgi -v

 PHP 5.3.3-7+squeeze14 with Suhosin-Patch (cgi-fcgi) (built: Aug  6 2012 20:09:06)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
    with Suhosin v0.9.32.1, Copyright (c) 2007-2010, by SektionEins GmbH

$which php-cgi

#nano /etc/lighttpd/conf-enabled/10-fastcgi.conf

Content of file:
# /usr/share/doc/lighttpd-doc/fastcgi.txt.gz
# http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions#mod_fastcgi-fastcgi

server.modules += ( "mod_fastcgi" )

fastcgi.server = ( ".php" => ((
                     "bin-path" => "/usr/bin/php-cgi",
                     "socket" => "/tmp/php.socket"
# /usr/share/doc/lighttpd-doc/fastcgi.txt.gz
# http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ConfigurationOptions#mod_fastcgi-fastcgi

server.modules += ( "mod_fastcgi" )

fastcgi.server = ( ".php" => ((
            "bin-path" => "/usr/bin/php-cgi",
            "socket" => "/tmp/php.socket",
            "max-procs" => 2,
            "idle-timeout" => 20,
            "bin-environment" => (
                "PHP_FCGI_CHILDREN" => "4",
                "PHP_FCGI_MAX_REQUESTS" => "10000"),
            "bin-copy-environment" => (
                "PATH", "SHELL", "USER"),
            "broken-scriptfilename" => "enable"
The module  fastcgi is added, and path to php-cgi is set! Good!

Restart server
# /etc/init.d/lighttpd restart

Create the file "index.php" to /var/www/
With Content:
<?php phpinfo(); ?>

This, helped me:



Automatic Login On Debian squeeze


System->Preferences->Password and Encryption Keys
or in terminal
$ seahorse

Right Click with mouse and select "Change Password",
new password lave empty.