Tag Archives: ubuntu

How to rename terminal tab title in gnome-terminal

from http://unix.stackexchange.com/a/186167/13739

Create a function in ~/.bashrc:

function set-title() {
if [[ -z “$ORIG” ]]; then
Then use your new command to set the terminal title. It works with spaces in the name too

set-title my new tab title

Similar Posts:

Tagged , ,

Update PIP on Ubuntu

From SO answer

Your pip may be outdated. Even in Ubuntu 14.04 LTS, the pip version it installed using apt-get install python-pip was 1.5.4. Try updating pip manually, and possibly the new packages again as well.

pip --version # 1.5.4
curl -O https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
hash -r # reset bash cache
pip --version # 6.0.8

The hash -r line is essential!

reference: https://pip.pypa.io/en/latest/installing.html

Similar Posts:

Tagged , , , ,

Php5{en,dis}mod mcrypt

Seriously. I’m doing too much php stuff!

Here are a few things I learned in the last couple of days:

apt-get install php5-mcrypt
dpkg -l php5-mcrypt
ii php5-mcrypt 5.4.6-0ubuntu6 amd64 MCrypt module for php5
php -m | grep -c mcrypt
php5enmod mcrypt
php -m | grep mcrypt

And to install xhgui+xhprof, follow this tutorial (README is lacking)

Similar Posts:

Tagged , , , ,

Codeception Testing – Part 2

I’m still setting up for BDD testing. All the basics are already there (see previous post).

I spoke quickly about setting up WPBrowser: WordPress specific set of extensions for Codeception. Here’s what to do (from the Readme):

  1. Require the package in the composer.json, then run “composer update” (details)
  2. Add the WPBrowser or WPWebDriver module in tests/acceptance.suite.yml (details)

The added bonus, if you’re using PhpStorm is that you will also get the related auto-complete package. And there’s plenty of functions that really speed things up.

Next for me was setting up MailCatcher

MailCatcher runs a super simple SMTP server which catches any message sent to it to display in a web interface

You need mailcatcher if you’re testing sending email out from the site. Here’s what I used:
\curl -sSL https://get.rvm.io | bash
source /etc/profile.d/rvm.sh
rvm install 2.2.2
rvm default@mailcatcher --create do gem install mailcatcher
rvm wrapper default@mailcatcher --no-prefix mailcatcher catchmail

You also need to add the following in /etc/php5/apache2/php.ini:

sendmail_path =  /usr/local/rvm/wrappers/default/catchmail -f some@from.address #

(and restart apache after that)

Next you need to install the codeception mailcatcher module using composer

"captbaritone/mailcatcher-codeception-module": "1.*"

And set the configuration inacceptance.suite.yml

You might get by with only that, but I had trouble with mail being routed through special plugins we use at work, so I had to install the ‘mailcatcher’ plugin

After that it was smooth testing …


Similar Posts:

Tagged , , , , ,

Codeception Testing – Part 1

I started working on automating testing ( BDD style ) a few weeks ago, and it took me a while to go over the available tools and options. The obvious starting point was cucumber. Which then led me to Behat, which then took me to Codeception.

When someone tells you it works out of the box, you should always take that with a pinch of salt. Of course, if you follow the quickstart page, it will take you through the different steps that you would take to unwrap the shrink around the box, open it up, take the protective foam bar out, … You get my drift.

Turns out you would need a few more ingredients before you could start testing. Here’s what I needed:

  1. Download and run selenium
  2. Download and install chromedriver
  3. Setup PhpStorm with Codeception

Of course if you’re using the PhpBrowser for testing (no Javascript with that sorry),  you could get started faster. So no nagging please.

And, if you’re like me, going to test WordPress sites themes and plugins, you might find the WPBrowser very useful.

Here’s a list of the steps I took locally on an Ubuntu 15.10 machine (that already had Google Chrome installed)

If you didn’t have Chrome (or installing on a server):

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
dpkg -i google-chrome-stable_current_amd64.deb
apt-get install -f # dirty shortcut to get apt to install dependencies for you!

wget http://goo.gl/rQhaxb -O /opt/selenium-server-standalone.jar
sudo apt-get install xvfb
alias run_selenium="DISPLAY=:1 xvfb-run java -jar /opt/selenium-server-standalone.jar"

wget -N http://chromedriver.storage.googleapis.com/2.20/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
chmod +x chromedriver

sudo mv -f chromedriver /usr/local/share/chromedriver
sudo ln -s /usr/local/share/chromedriver /usr/local/bin/chromedriver
sudo ln -s /usr/local/share/chromedriver /usr/bin/chromedriver

A couple of parting notes:

  1. WebDriver and PhpBrowser do not work together, one of them must be commented out when you’re testing. Pretty obvious when you think about it!
  2. When  you change browser to ‘chrome’, you should also add ‘http_proxy: direct’ in the acceptance.suite.yml

Similar Posts:

Tagged , , , , ,

Multiple IP addresses (aliases) for wifi connection on Ubuntu

From: http://askubuntu.com/a/217363/63517


I’m assuming you’re running NetworkManager here, you’ve already set up your wireless connection using DHCP and you’re talking about IPv4 here.

While you can’t configure the static addresses in NetworkManager GUI, there’s a hack possible.

  1. Find the connection UUID of the connection configured
    $ nmcli con
  2. Add a script in /etc/NetworkManager/dispatcher.d/, containing this starting point:
    if [ "$CONNECTION_UUID" == "$MYCON_UUID" ]; then
        # add alias for Network 1:
        ifconfig $WLAN_DEV:0 netmask up
        # add alias for Network 2:
        ifconfig $WLAN_DEV:1 netmask up
  3. Make sure it has the right permissions (chmod +x /path/to/script.sh) and restart NetworkManager:
    $ sudo service network-manager restart

Now when you connect to your wireless connection, it should add the two aliases (check with ifconfig.

Similar Posts:

Tagged , , ,

NVidia Driver on Ubuntu 13.04

A quick recipe that worked like a charm
Download driver from http://www.nvidia.com/object/linux-display-amd64-313.30-driver.html
then run:

sudo service lightdm stop
sudo chmod a+x NVIDIA-Linux-x86_64-313.30.run
sudo ./NVIDIA-Linux-x86_64-313.30.run

You may need to run the last command twice (including a reboot) if you are already running Nouveau drivers. Follow the on-screen instructions.

Similar Posts:

Tagged , ,

Customize the Ubuntu/Gnome Launchers

Google Chrome has a special “New Incognito Window” in the Gnome launcher. So how hard would it be to edit the launcher buttons to add some customized commands? Apparently not so hard. Here’s what I got: Continue reading

Similar Posts:

Tagged , , , , ,

Android Plugin for Eclipse Hanging

For a couple of weeks now I have been trying to get the Android Plugin for Eclipse to play nicely on my new 64bit Ubuntu 11.10.
It was always hanging without a good explanation. The only message I got was “Loading Data for Android 2.3.3” and it reaches 100% but stays there.

I thought it was related to the fact that I’m using the latest Indigo (3.7) eclipse, but that wasn’t it (I tried with earlier versions). I also thought it was because of the 64bit java I installed separately (not using apt). That wasn’t it either (the apt installed version didn’t work either). Stupid solutions, I know, but I had to try!

The solution was to rename the SDK directory and remove the _x64 from the end of that. After that, I set it in Windows -> Preferences -> Android -> SDK location and applied the changes and voila! It works now.

I’ll be fixing the ESD app based on some kind feedback from friends. And maybe work on other pending projects as well. Stay tuned.

Similar Posts:

Tagged , , ,