.:Master vim:.

fun | Posted by tuxifier
Aug 25 2010

Today I found this:

Vim tips

All I can say now is:


.:Linux has a toilet:.

commandlinefu, fun | Posted by tuxifier
Aug 18 2010

After posting some serious technical howtos it is time to have some fun.

I just stumbled upon a command line tool called toilet, which can render text in different fonts or colors. It also can export the results in several formats. To install it in Ubuntu just use your favourite package manager like Synaptic

Available export formats:

  • “caca”: native libcaca format
  • “ansi”: ANSI
  • “utf8″: UTF-8 with ANSI escape codes
  • “utf8cr”: UTF-8 with ANSI escape codes and MS-DOS \r
  • “html”: HTML
  • “html3″: backwards-compatible HTML
  • “bbfr”: BBCode (French)
  • “irc”: IRC with mIRC colours
  • “ps”: PostScript document
  • “svg”: SVG vector image
  • “tga”: TGA image

To make things clear here is an example:

This one is created like this

toilet --gay -E html http://www.tuxify.de > tuxify.html
http://www.tuxify.de

Output of toilet

funny

.:Just switched to KDE-4.5 on Ubuntu lucid:.

Uncategorized | Posted by tuxifier
Aug 12 2010

Another clean update on ubuntu even if I tried something unusual.

Here is what I did:

I activated a Kubuntu backports repostory in an Ubuntu intallation with installed KDE

sudo vi /etc/apt/sources.list
and added:
deb http://ppa.launchpad.net/kubuntu-ppa/backports/ubuntu lucid main

Then I added the signing key of the repository

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 8AC93F7A

After that I updated the Repo

sudo aptitude update

followed by a dist-upgrade

sudo aptitude dist-upgrade

Then I switched to a terminal and restarted kdm

sudo stop kdm
sudo start kdm

Logged into KDE Session and had a fancy new KDE-4.5 Desktop in front of me

smooth

.:Self compiled apache with self compiled openssl, self compiled mysql and self compiled php and mod_perl:.

howto | Posted by tuxifier
Aug 11 2010

Preparations

Create the directories to build your stuff in. I chose the following:

mkdir /data /data/sources /data/lib

then get the needed sources

download all the sources to /data/sources directory and unpack the tar.gz files.

Make sure you have gcc installed and to be able to compile mysql you also need the ncurses-devel and lipperl-dev libraries.

Play Bob the builder

Step 1: Compile MySQL

cd /data/sources/mysql-VERSION
./configure --with-prefix=/data/lib/mysql
make
make install

Step 2: Compile OpenSSL

cd /data/sources/openssl-VERSION
./config --prefix=/data/lib/openssl shared zlib-dynamic
make depend
make
make install

!ATTENTION! This may safe you a lot of time

Before you can compile your apache webserver with the self compiled OpenSSL two following preparations are needed:

  • Register the fresh compiled openssl shared libraries in /etc/ld.so.conf and run ldconfig
sudo vi /etc/ld.so.conf
insert the following line:
/data/lib/openssl/lib      #for 32bit Systems
/data/lib/openssl/lib64    #for 64bit Systems
sudo ldconfig
  • export the fresh compiled openssl shared libraries in PKG_CONFIG_PATH
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/data/lib/openssl/lib      #for 32bit Systems
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/data/lib/openssl/lib64    #for 64bit Systems

Step 3: Compile apache

cd /data/sources/httpd-VERSION
./configure --prefix=/data/apache --enable-mods-shared=all --enable-deflate --enable-dav-fs --enable-rewrite --enable-info --enable-logio --enable-log-forensic --enable-ssl --enable-status --enable-headers --enable-proxy --enable-vhost-alias --with-ssl=/data/lib/openssl
make
make install

Step 4: Compile php with module for apache

cd /data/sources/php-VERSION
./configure --prefix=/data/php --with-apxs2=/data/apache/bin/apxs --with-mysql=/data/lib/mysql
make
make install

Step 5: Compile mod_perl

cd /data/sources/mod_perl-VERSION
perl Makefile.PL
You will be asked for apxs binary path: Enter /data/apache/bin/apxs
make
make install

In your /data/apache/conf/httpd.conf enable mod_perl by entering this line below the other LoadModule directives

LoadModule perl_module modules/mod_perl.so

Maybe you can also add –enable-perl in your apache configure option string. I did it by manually adding the above line.

Start apache:

To start your freshly compiled apache server by typing:

/data/apache/bin/apachectl start

Notes

Your configure option strings may differ from the ones I used here. You can adjust them to your needs.

Comments and corrections are welcome :)

scratchy

.:Display file permissions in octal format:.

commandlinefu | Posted by tuxifier
Aug 05 2010
ls -l | awk '{k=0;for(i=0;i<=8;i++)k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));if(k)printf("%0o ",k);print}'

nothing else to say

.:SSH: bad ownership or modes:.

howto | Posted by tuxifier
Aug 04 2010

The symptom

  • A user cannot login to a machine (public key or password)
  • Syslog tells
Authentication refused: bad ownership or modes for directory /[…]

The cause

  • The ownership or chmod of the home directory of the user logging in aren’t set properly, meaning that others than the user that logs in have write access to its home directory
  • SSH daemon is running in StrictMode

The solution(s)

  • Remove the write access of users/groups different to the  login user’s home directory
chmod go -w $HOME
  • Configure sshd not to run in strict mode
in /etc/ssh/sshd_config set:
Options StrictMode no
  • resload ssh daemon
/etc/init.d/ssh reload

accessible

.: Set SVN Keywords for new and existing files :.

howto | Posted by tuxifier
Jul 29 2010

Configuration to automatically add svn keywords to newly added files:

  • Open the configuration file $HOME/.subversion/config
  • Add the following line below [miscellany]
[miscellany] <-- already exists
enable-auto-props = yes
  • Add the following line below [auto-props]
[auto-props]
* = svn:keywords=Id Date Author Revision LastChangedDate LastChangeBy HeadURL
  • To test the settings go to one of your checked out workin copies and create a file with the following content:
# $Id::                                                     $: Id of the file
# $Revision::                                               $: Revision of last commit
# $LastChangedDate::                                        $: Last change date
# $LastChangedBy::                                          $: Last change by
  • Now svn add the file and commit it. When you reopen the file you will see the above placeholders replaced with fancy information

Adding svn keywords to already existing files:

  • I did the following:
find <repository_dir> -type f -exec svn propset svn:keywords "Id Date Author Revision LastChangedDate LastChangedBy HeadURL" {} \;
  • This might throw a lot of errors because you cannot set svn properties on some files in your working copy (e.g. in .svn). But even if it outputs erros it did the job right in my case

versioning.

.:Vuvuzela Filter:.

fun | Posted by tuxifier
Jun 15 2010

To mute the this year’s football world championship bee hive sound caused by the vuvuzela horn you could of course use the penguin:

A combination of jack and  jack-rack does the trick :)

Check this blog: ahans,de

Update:

WM without hooooooorn is also possible with vlc media player:

vlc --http-proxy=my.proxy.com:80 --audio-filter=param_eq --param-eq-f1=233 --param-eq-f2=466 --param-eq-f3=932 --param-eq-gain1=-20 --param-eq-gain2=-20 --param-eq-gain3=-20 --param-eq-lowf=100 --param-eq-lowgain=15 --param-eq-q1=10 --param-eq-q2=10 --param-eq-q3=10

silence

.:Mission lucid accomplished:.

howto | Posted by tuxifier
Apr 30 2010

My first post on lucid lynx:

What I did to upgrade

do-release-upgrade

fancy in a KDE konsole

all fine for the first impression all I have seemed to have lost for now is cups-pdf  – no fear to follow :)

If anything else is missing – I’ll post it here!

Thanks to the (K)ubuntu team for the great work you did for years – you help Linux to be the best there is, the best there was and the best there will ever be!

impressively easy

.:Selfmade magic folder:.

howto | Posted by tuxifier
Apr 20 2010

I wanted to have a folder where I can drag and drop one or more images. No magic till this point. But I also wanted those image files to be resized to a specific resolution to shrink them to a smaller file size. So this is how I did it:

Create the script

#!/bin/bash

newsize=1280x1024
outpath=/data/media/photo/resized

while [ $# -ge 1 ];
do
 case $1 in
    *.jpg | *.JPG | *.gif | *.GIF | *.bmp | *.BMP | *.png | *.PNG)
    filename=`basename $1`
    convert $1 -resize $newsize $outpath/$filename
    if [ $? -eq 0 ]; then
       kdialog --title "magic image resizer info" --passivepopup "Successfully resized $1 to $outpath/$filename new size is $newsize" 10
    else
       kdialog --title "magic image resizer error" --passivepopup "Could not convert $filename"
    fi
    ;;
    *)
    exit 0
    ;;
 esac
 shift
done

Create the link

You have to make the script executable. Then create a link (link to program) on the desktop that points to the script. I gave it a fancy image folder icon from the KDE icon collection. Now you have a desktop icon where you can drag and drop files to.

Note: The above script is intended to be used with KDE4 and higher because it uses the –passivepopup switch of kdialog which produces those fancy notifications on your system control section “i” on the lower right of your screen.

resizing