Penguin, small TECH.BARWICK.DE

Recent posts





Powered By


Friday, April 12, 2013   5:34 PM

Wrapper script for find

I find (hah) myself using find a lot to locate file system objects in the current directory, however find recurses into subdirectories by default. Using the parameters -mindepth 1 -maxdepth 1 restrict find to the current directory, are however a pain to type each time.

To make my own personal life easier I created this wrapper script (named find1):


if [ ($# < 1) ]; then

find $FINDPATH -mindepth 1 -maxdepth 1 $@

which automatically prepends the -mindepth and -maxdepth to find (they need to be first in the argument list).

Posted in Shell | add a comment

As mentioned previously, it's possible to install the usual set of command-line tools without the full XCode installation. However this seems to confuse Apache (at least with version 2.2), whichis expecting to find a C compiler in the XCode folder:

checking for chosen layout... Apache
checking for working mkdir -p... yes
checking build system type... x86_64-apple-darwin12.2.1
checking host system type... x86_64-apple-darwin12.2.1
checking target system type... x86_64-apple-darwin12.2.1

Configuring Apache Portable Runtime library ...

checking for APR... yes
  setting CC to "/Applications/"
  setting CPP to "/Applications/ -E"
  setting CFLAGS to " "
  setting LDFLAGS to " "

Configuring Apache Portable Runtime Utility library...

checking for APR-util... yes
checking for gcc... /Applications/
checking whether the C compiler works... no
configure: error: in `/Users/ian/src/httpd-2.2.24':
configure: error: C compiler cannot create executables

Posted in Mac OS X | add a comment

Thursday, March 21, 2013  12:24 AM

Using MacPorts without a full XCode installation

As mentioned previously, it's now possible to install XCode's command line tools without installing the entire XCode environment. This is particularly handy when setting up an environment on a remote Mac. However it looks like MacPorts is still expecting to find the full XCode installation and will complain like this:

Some-Mac-mini:~ root# port install somepackage
Error: No Xcode installation was found.
Error: Please install Xcode and/or run xcode-select to specify its location.

Posted in Mac OS X | add a comment

Wednesday, March 20, 2013  11:30 PM

Install XCode command line tools via the command line

Occasionally I've needed to set up some kind of script or even a server application in a remote office, where the only computer with a UNIX-style environment is a Mac. Although OS X comes with a fair amount of tools built-in, these are usually not sufficient for the specialised configuration required, which means I need to compile some applications from scratch and probably install a command-line driven package management system such as MacPorts. To get this up and running of course, I need a compiler and associated tools, which are not built in. These are available from Apple as part of the XCode package; recently the non-IDE parts of XCode have been made available as a separate dmg file.

Posted in Mac OS X | add a comment

Friday, February 1, 2013   2:12 AM

Remove all cookies in SeaMonkey

Occasionally I like to remove a bunch of cookies from a SeaMonkey profile, unfortunately at some point it appears the Great Dumbing Down is spreading even to obscure browsers such as this Netscape descendant, and the "Tools > Cookie Manager > Manage Stored Cookies" dialogue only allows you to delete cookies for individual sites (trying to mark multiple sites no longer works).

Luckily it appears there is a hidden chrome URL which still offers this functionality:


(paste into the address bar).

There's a list of similar useful chrome URLs here:

Posted in WWW | add a comment

Wednesday, January 30, 2013   3:07 AM

Installing Debian VirtualBox GuestAdditions

While installing Debian 6 on VirtualBox, I noticed it evidently detected it was running in VirtualBox and automatically added three virtualbox-ose-guest-* packages to the install, which is nice. However they are somewhat dated - version 3.2.x whereas the GuestAdditions virtual CD mounted by VirtualBox provides 4.1.x.

Remove the existing packages with:

apt-get remove virtualbox-ose-guest-dkms virtualbox-ose-guest-utils virtualbox-ose-guest-x11

(otherwise the GuestAdditions installer will complain) and reboot to remove installed kernel modules.

The virtual CD does not appear to be startable from a double click - the error "Cannot find the autorun program" pops up - instead run the script directly with:


A further reboot will activate the GuestAdditions.

Posted in Linux | add a comment

After upgrading my development environment to openSuSE 12.1, I started getting a bunch of notices like the below after every Subversion operation which uses SSH:

A /tmp/svn25825/public/favicon.ico
Exported revision 16786.
Killed by signal 15.

The issue is discussed here; in a nutshell, the solution is to add "-q" to the ssh command invoked by SVN, which is defined in the configuration file (typically ~/.subversion/config). In my case, the line in question now looks like this:

ssh = $SVN_SSH ssh -q -o ControlMaster=no

Note: ensure this line is in the [tunnels] section of the config file.

Posted in Devel | add a comment

I got the following error when building PHP with cURL (on openSuSE 12.1):

/usr/lib64/gcc/x86_64-suse-linux/4.6/../../../../x86_64-suse-linux/bin/ld: ext/curl/.libs/interface.o: undefined reference to symbol 'CRYPTO_set_id_callback'
/usr/lib64/gcc/x86_64-suse-linux/4.6/../../../../x86_64-suse-linux/bin/ld: note: 'CRYPTO_set_id_callback' is defined in DSO /lib64/ so try adding it to the linker command line
/lib64/ could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Error 1

Not sure why it's happening, but a look in Makefile showed that EXTRA_LIBS contained "-lcrypt" twice:

EXTRA_LIBS = -lcrypt -lz -lresolv -lcrypt -lpq -lrt -lpq -lpng -lz -ljpeg -lcurl -lrt -lm -ldl -lnsl -lxml2 -lzlcurl -lxml2 -lz -lm -lxml2 -lz -lm -lcrypt -lxml2 -lz -lm -lxml2 -lz -lm -lxml2 -lz -lm -lcrypt

Changing the last "-lcrypt" to "-lcrypto" resolved the problem:

EXTRA_LIBS = -lcrypt -lz -lresolv -lcrypt -lpq -lrt -lpq -lpng -lz -ljpeg -lcurl -lrt -lm -ldl -lnsl -lxml2 -lzlcurl -lxml2 -lz -lm -lxml2 -lz -lm -lcrypt -lxml2 -lz -lm -lxml2 -lz -lm -lxml2 -lz -lm -lcrypto

Posted in Linux | add a comment

Wednesday, February 9, 2011   5:31 AM

magpie-crawler/1.1 (Brandwatch)

I was idly watching some Apache access logs scroll by (well actually I was busy doing something, but like to keep an eye on things to spot any interesting or worrying trends early) and noticed a bunch of entries like this: - - [06/Feb/2011:06:21:23 +0100] "GET /blog/?o=10 HTTP/1.1" 301 290 "-" "magpie-crawler/1.1 (U; Linux amd64; en-GB; +" - - [006/Feb/2011:06:21:33 +0100] "GET /blog/?o=40 HTTP/1.1" 301 290 "-" "magpie-crawler/1.1 (U; Linux amd64; en-GB; +"

Never noticed that UA before, and it never seemed to follow up on the (perfectly valid) 301 redirects. A scan through 3 months of logs shows it's been doing that all the time - what a dumb bot.

Checking the URL provided, this appears to be the home page of a UK-based company providing "Social Media Monitoring Tools" - and who don't have the courtesy to provide any more information about their bot / crawler. Which is evidently not popular in some quarters.

So, as "Brandwatch" provides neither myself not the sites I run with any conceivable benefit, it's on the blocklist they go.

(I wonder if they monitor their own brand?)