Saturday, February 28, 2009

HowTo upgrade from Debian Etch to Lenny

Debian Lenny’s release is getting closer and closer and many people will want to upgrade their Etch servers to Lenny, maybe even before Lenny is declared stable (at RC1 at this time). Even people that don’t want to upgrade to lenny might find some useful information in this post ;-) .
One of the greatest advantages of debian over other linux distributions is that we can upgrade our systems live from one version to another (hopefully with minimal damage or impact to the running system), while other distros like rhel will not recommend their users to ever do this but to do a full new installation and migrate over their user data afterwards. Obviously it is a great advantage to be able to perform a live upgrade from one version to the other, and from my experience this has not caused problems, but even so, if this is a production server or just a system you care for and it is not for testing, I would start by making a backup of the system and be prepared in case it will no longer work after this. Just in case… Also you should start by reading the release notes of the new version and look for any incompatibilities (hardware or software) or changed things that could affect your particular setup.

1. Update apt sources.list

The first thing we will do (after the backup of course) is to edit the /etc/apt/sources.list file and replace “etch” with “lenny“. Originally, this might look like this (for a system using the main US mirrors; your file might use a different local one):

deb http://ftp.us.debian.org/debian/ etch main contrib non-free
deb-src http://ftp.us.debian.org/debian/ etch main contrib non-free

deb http://security.debian.org/ etch/updates main contrib non-free

after replacing etch with lenny the file will look like this:

deb http://ftp.us.debian.org/debian/ lenny main contrib non-free
deb-src http://ftp.us.debian.org/debian/ lenny main contrib non-free

deb http://security.debian.org/ lenny/updates main contrib non-free

WARNING: if for some reason your apt sources doesn’t use etch, but “stable” then your apt commands will start to use lenny the moment it is released. This can result in wrongfully performing the upgrade while you don’t want to do this or even upgrade by mistake. I would always recommend people to use the release name (like etch, lenny) instead of generic names (like stable, testing); this way you will have the control on when you want to upgrade.

2. Perform the actual upgrade

After changing apt sources we need to refresh the indexes, and for this we have to run:
aptitude update
Once this is done we will want to upgrade first the core apt packages:
aptitude install apt dpkg aptitude
and finally perform the full upgrade:
aptitude full-upgrade
(dist-upgrade was renamed to full-upgrade in lenny’s aptitude); or you can use:
apt-get dist-upgrade

This will take a while depending on what packages you have installed (that will need to be upgraded) and on your internet connection speed. After this is done you will have to reboot your system in order to activate the kernel upgrade to the lenny 2.6.26 kernel. Also you will want to check and see that all the applications you are using are still working as expected after the upgrade.

Note: if you are using release names in your apt sources and not generic ones like “stable” your debian system will not upgrade by itself and you will have the control when you want to do this (before or after lenny is release, or even delay this as long as you need) as explained in this post; even if you don’t want to upgrade, check your apt sources and ensure it is pointing to etch so no mistakes will happen on the day lenny is released (in case your files points to stable).

HowTo upgrade from Debian Etch (4.0 ) to Lenny (5.0)

Debian Lenny’s release is getting closer and closer and many people will want to upgrade their Etch servers to Lenny.This is currently in testing so it is not recommended to use these instruction in production.

Before Upgrade

Take a complete backup of your debian etch server

Procedure to follow

First you need to take a backup of your sources.list file using the following command

#cp /etc/apt/sources.list /etc/apt/sources.list.backup

Now edit the /etc/apt/sources.list file

#vi /etc/apt/sources.list

Now you need to replace “etch” with “lenny“.

deb http://ftp.gb.debian.org/debian/ etch main contrib non-free
deb-src http://ftp.gb.debian.org/debian/ etch main contrib non-free

deb http://security.debian.org/ etch/updates main contrib non-free

after replacing etch with lenny the file will look like this

deb http://ftp.gb.debian.org/debian/ lenny main contrib non-free
deb-src http://ftp.gb.debian.org/debian/ lenny main contrib non-free

deb http://security.debian.org/ lenny/updates main contrib non-free

The above example is for a system using the main UK mirrors; your file might use a different local one

WARNING: if for some reason your apt sources doesn’t use etch, but “stable” then your apt commands will start to use lenny the moment it is released. This can result in wrongfully performing the upgrade while you don’t want to do this or even upgrade by mistake.We would always recommend people to use the release name (like etch, lenny) instead of generic names (like stable, testing); this way you will have the control on when you want to upgrade.

Perform upgrade

After changing apt sources we need to update source list using the following command

#aptitude update

Once this is done we will want to upgrade first the core apt packages

#aptitude install apt dpkg aptitude

and finally perform the full upgrade

#aptitude full-upgrade

Note:-dist-upgrade was renamed to full-upgrade in lenny’s aptitude; or you can use:apt-get dist-upgrade

This will take a while depending on what packages you have installed (that will need to be upgraded) and on your internet connection speed. After this is done you will have to reboot your system in order to activate the kernel upgrade to the lenny 2.6.26 kernel. Also you will want to check and see that all the applications you are using are still working as expected after the upgrade.

How To Upgrade A Debian Etch To Debian Lenny

How To Upgrade A Debian Etch System (Server & Desktop) To Debian Lenny

This article shows how you can upgrade a system running Debian Etch to Debian Lenny. It is intended for both server and desktop systems.

I do not issue any guarantee that this will work for you!

1 Preliminary Note

You should take a backup of your Debian Etch system (you can find some suitable tutorials for this in the Backup category), just in case something goes wrong (but the upgrade worked fine for me).

2 Install The Latest Etch Updates

Before we upgrade to Lenny, we install the latest updates for Etch.

Make sure that your /etc/apt/sources.list uses etch, not stable (because lenny is the new stable), e.g. as follows:

vi /etc/apt/sources.list

deb http://ftp2.de.debian.org/debian/ etch main
deb-src http://ftp2.de.debian.org/debian/ etch main

deb http://security.debian.org/ etch/updates main contrib
deb-src http://security.debian.org/ etch/updates main contrib

Then install the updates as follows:

aptitude update

aptitude upgrade

3 Modify /etc/apt/sources.list To Use Lenny

After we have installed the latest Etch updates, we open /etc/apt/sources.list...

vi /etc/apt/sources.list

... and replace all etch references with lenny:

deb http://ftp2.de.debian.org/debian/ lenny main
deb-src http://ftp2.de.debian.org/debian/ lenny main

deb http://security.debian.org/ lenny/updates main contrib
deb-src http://security.debian.org/ lenny/updates main contrib

Then update the packages database:

aptitude update

4 Doing The Upgrade

Next we install the Lenny versions of dpkg, aptitude, and apt because their Etch versions are often unable to handle the upgrade to Lenny:

aptitude install dpkg aptitude apt

Then we do a minimal system upgrade (because a full upgrade might cause some conflicts at this stage):

aptitude upgrade

---

If this is a desktop system, you should now check if the package libfam0c102 is installed:

dpkg -l libfam0c102 | grep ^ii

If it is, install its Lenny version now:

aptitude install libfam0

---

Afterwards, we can start the full distribution upgrade:

aptitude full-upgrade

(This command is the same as aptitude dist-upgrade.)

Afterwards, reboot the system:

reboot

After the reboot, check your new kernel:

uname -r

It should display Lenny's 2.6.26 kernel, e.g.:

server1:~# uname -r
2.6.26-1-486
server1:~#


And /etc/debian_version should now contain 5.0:

cat /etc/debian_version

server1:~# cat /etc/debian_version
5.0
server1:~#

Friday, February 27, 2009

Thursday, February 26, 2009

Howto Play Music And Video In Fedora 10

How to play music and video(MP3, MPEG, AVI, FLV and other multimedia files) in Fedora 10?

Due to patent encumbrance codecs required to play some proprietary file formats are not shipped with Fedora. Codecs are the programs that encode and decode digital data. These codecs are available in the livna repository for Fedora 8. You will be able to play mpeg, mp3, avi, flv and other commonly used file formats for music and video. You will require an Internet connection to download and install these packages on your computer.

Let us get started. Are you ready?

playing music and video in Fedora 10

1. Open a terminal and switch to root user.
Launch the terminal from the panel menu
Click Applications->System Tools->Terminal
On the terminal type:

su -

Type your root password and hit enter key on the keyboard.

2. Check whether sound is properly configured on your system.

play /usr/share/sounds/startup3.wav

If you hear sounds proceed further. Otherwise check volume control and sound devices configuration. Below is the output when you play the wav sound file from the terminal.

Input File     : '/usr/share/sounds/startup3.wav'
Sample Size : 16-bit (2 bytes)
Sample Encoding: signed (2's complement)
Channels : 2
Sample Rate : 44100

Time: 00:02.50 [00:00.00] of 00:02.50 ( 100.0%) Output Buffer: 110.36K

Done.

3. Enable the rpm.livna.org, RPM Fusion free and non free repositories.
rpm -Uvh http://rpm.livna.org/livna-release-10.rpm

rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm

rpm -Uvh http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm

4. Remove the totem and xine packages installed on your computer. Let us use the totem packages from RPM Fusion instead. From this step we will use yum. Close other applications that use yum in the background. Pirut - Add/Remove Software and Software Updater use yum as back end. You may also have to stop yum-updatesd daemon running on your computer.
yum remove totem totem-mozplugin totem-plparser xine xine-lib

Use these commands to kill the existing yum processes if you encounter any issues running yum.

killall yum-updatesd
rm /var/run/yum.pid

5. Download and install the codecs from rpm.livna.org.

yum install gstreamer-plugins-bad gstreamer-plugins-bad-extras gstreamer-plugins-ugly xine-lib-extras-nonfree totem-xine

6. Optionally download and install other media players.
a) Audicious

yum install audacious-plugins-nonfree-aac audacious-plugins-nonfree-alac audacious-plugins-nonfree-mms audacious-plugins-nonfree-mp3 audacious-plugins-nonfree-tta audacious-plugins-nonfree-wma audacity-nonfree

b) ffmpeg: FFMpeg is a complete and free Internet live audio and video
broadcasting solution. It can encode in real time in many formats including MPEG1 audio
and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.
yum install ffmpeg ffmpeg-libs ffmpeg2theora gstreamer-ffmpeg

c) mplayer

yum install mplayer mplayer-doc mplayer-gui mplayerplug-in gnome-mplayer

d) xmms

yum install  xmms-faad2 xmms-mp3 xmms-normalize

e) Rhythmbox
yum install rhythmbox-lirc rhythmbox-upnp

f) Others
yum install vlc

Launch your favorite multimedia application from the GNOME panel and play your favorite music or video.

Wednesday, February 25, 2009

Howto do I install multimedia plugins, codecs, libdvdcss in Debian Linux Etch 4.0

Q. I’ve just installed Debian Linux etch 4.0. I was reading your libdvdcss related post. How do I install libdvdcss and other multimedia codecs under Linux?

A. Debian Linux includes xine, totem or other DVD/movie player softwares. However some restricted plugins, mp3 support, DVDs and selected wifi cards out of the box are not supported due to copyright/IP laws.

#1: Update Debian Linux etch repository

Debian multimedia repository includes required packages. Open a file /etc/apt/sources.list
# vi /etc/apt/sources.list
Append following line
deb http://www.debian-multimedia.org etch main

#2: Update packages

Run apt-get command:
# apt-get update

#2: Install packages

You can now install packages such as libdvdcss2, mplayer and so on with apt-get command itself:
# apt-get install mplayer w32codecs libdvdcss2
Now install libdvdcss:
# cd /usr/share/doc/libdvdread3/examples
# sh install-css.sh

Install libdvdcss and w32 video codecs in Debian Linux

I have tested this how-to on Etch

This howto only includes codecs for win32, Quicktime, RealPlayer, and Live.com (streaming for protocols such as reaplayer)

Not up for doing all of this? There are unofficial debian packages.

Otherwise...

Files to download

Source:

MPlayer v1.0pre8 source - 7.8M - You may download directly from the Mplayer HQ Download)
(unless you have a src file of your own you wish to use)

Codecs:

essential-YYYYMMDD.tar.bz2 - Grab the latest version "essential codecs package" from Mplayer HQ Download

live555-latest.tar.gz - about 400 K (live555.com download)

User Conf:

mplayer-user-conf.tar - 690 k ( mirror2)

Since I don't know where you are downloading these to, you will just need to move them to the proper place when I ask you to unpack them.

Uninstalling Old Version

If you have an older version of mplayer on your system remove all traces of it (if you used a deb do dpkg -P mplayer then go through your system and make sure EVERYTHING for mplayer is gone, some things will not be removed with dpkg -P). This step is VERY important.

Things from apt

as root:

apt-get install libogg0 libogg-dev libvorbis0a libvorbis-dev vorbis-tools libpng12-0 libpng12-dev liblogfile-rotate-perl libconfhelper-perl debhelper fakeroot g++ libgtk1.2 libgtk1.2-dev svgalibg1 svgalibg1-dev libsdl1.2-dev libaa1 libaa1-dev x11proto-gl-dev

NOTE: Make sure your gcc and g++ versions match!

Installing the Codecs

as root:

rm -r /usr/lib/win32

(If it exists. These are the w32 codecs, don't worry, we will replace these later, you can pack them up and move them if you are really concerned about losing them)

tar -jxvf essential-YYYYMMDD.tar.bz2

mv essential-YYYYMMDD/ /usr/lib/win32

Live.com Codecs (for streaming realplayer)

cd /usr/local/lib/

rm -r live/

(If it exists. These are the old live.com codecs, don't worry, we will replace these later, you can pack them up and move them if you are really concerned about losing them)

tar -xvvzf live555-latest.tar.gz

cd live/

./genMakefiles linux

make

Setting up the ~/.mplayer directory

(you can skip this if you have your own configs and settings, and/or don't want to use gmplayer)

become your user

cd

tar -xvvf mplayer-user-conf.tar

this will create the ~/.mplayer directory including a skin (neutron), arial size 18 font, and config file

in line 27 of the ~/.mplayer/gui.conf file, change: font_name = "/home/lyz/.mplayer/font/font.desc" to reflect your username (I havent found a way around this step, ~ doesn't work).

Creating the .deb and installing mplayer

as root:

cd /usr/src/mplayer/

tar -jxvvf MPlayerVersion.tar.bz2 (where 'Version' is your version, ie -1.0pre7)

cd MPlayerVersion

DEB_BUILD_OPTIONS="--disable-runtime-cpudetection --disable-rtc --enable-live --with-livelibdir=/usr/local/lib/live" fakeroot debian/rules binary

Make sure there aren't spaces between -- and any-of-the-options

when it's finished compiling, it will create an mplayerVersion.deb file in /usr/src/mplayer

cd /usr/src/mplayer/

dpkg -i mplayerVersion.deb

when it asks about video output choose which is right for you, if unsure just use xv

The End

launch mplayer by typing mplayer moviefile (where moviefile is the name of the file you wish to use to test mplayer)

You're done! Congrats!

Some Notes:

This also includes gmplayer. gmplayer allows you to use "skins" for mplayer, I don't usually use skins because I don't need the gui control, and the skins tend to take away from speed and quailty of movie decoding.

If you're having problems using xv as a video output, try gl or gl2; mplayer -vo help will give you a listing of your options.

Sometimes you will want to watch realplayer files that are .rm; remember that a .rm can be viewed as a simple text file with the stream location of the actual .ra is in that file. mplayer will not play the .rm but it will play the .ra stream. (Apparently there is a patch out so that mplayer will play .rm but I have never used it).

FAQ

Something broke, can you help?

I might be able to, as I said, I have tested this, and if something broke it might be a conflict in versions (stable vs testing vs unstable vs mixed system) or a simple user error. It is quite possibly due to not completely uninstalling previous versions of mplayer, this is a very important step! If all else fails, you can always uninstall the deb, and reinstall what you had before.

I'm not on debian but I want to install mplayer, any pointers?

Not really, I could point you to some sites I have found for other distros, but I have never tried them, so I can't guarantee they will work.

Why don't you include more codecs?

Are there many more? I have included the ones I primarily use, so these are the only codecs I have installed and tested.

Why do you make a .deb? How do I compile it without making a .deb?

I make a .deb because it's debian's package management tool. If you just want to compile it and not bother with the deb, the "DEB_BUILD_OPTIONS" are what would normally be passed when you compile the package by hand.

What about DVD support?

I don't have a DVD-ROM, so I have no way of testing DVD support, sorry.

Links

MPlayerHQ - Main MPlayer site

Live555.com - Home of the live.com codecs

linux.coconia.net "Installing Mplayer" - Not Debian specific, but includes some codecs that I haven't bothered with

How To Install On Debian with Several Codecs

I have tested this how-to on Etch 4.0

This howto only includes codecs for win32, Quicktime, RealPlayer, and Live.com (streaming for protocols such as reaplayer)

Not up for doing all of this? There are unofficial debian packages provided by marillat: read more

Otherwise...

Files to download

Source:

MPlayer v1.0pre8 source - 7.8M - You may download directly from the Mplayer HQ Download)
(unless you have a src file of your own you wish to use)

Codecs:

essential-YYYYMMDD.tar.bz2 - Grab the latest version "essential codecs package" from Mplayer HQ Download

live555-latest.tar.gz - about 400 K (live555.com download)

User Conf:

mplayer-user-conf.tar - 690 k ( mirror2)

Since I don't know where you are downloading these to, you will just need to move them to the proper place when I ask you to unpack them.

Uninstalling Old Version

If you have an older version of mplayer on your system remove all traces of it (if you used a deb do dpkg -P mplayer then go through your system and make sure EVERYTHING for mplayer is gone, some things will not be removed with dpkg -P). This step is VERY important.

Things from apt

as root:

apt-get install libogg0 libogg-dev libvorbis0a libvorbis-dev vorbis-tools libpng12-0 libpng12-dev liblogfile-rotate-perl libconfhelper-perl debhelper fakeroot g++ libgtk1.2 libgtk1.2-dev svgalibg1 svgalibg1-dev libsdl1.2-dev libaa1 libaa1-dev x11proto-gl-dev

NOTE: Make sure your gcc and g++ versions match!

Installing the Codecs

as root:

rm -r /usr/lib/win32

(If it exists. These are the w32 codecs, don't worry, we will replace these later, you can pack them up and move them if you are really concerned about losing them)

tar -jxvf essential-YYYYMMDD.tar.bz2

mv essential-YYYYMMDD/ /usr/lib/win32

Live.com Codecs (for streaming realplayer)

cd /usr/local/lib/

rm -r live/

(If it exists. These are the old live.com codecs, don't worry, we will replace these later, you can pack them up and move them if you are really concerned about losing them)

tar -xvvzf live555-latest.tar.gz

cd live/

./genMakefiles linux

make

Setting up the ~/.mplayer directory

(you can skip this if you have your own configs and settings, and/or don't want to use gmplayer)

become your user

cd

tar -xvvf mplayer-user-conf.tar

this will create the ~/.mplayer directory including a skin (neutron), arial size 18 font, and config file

in line 27 of the ~/.mplayer/gui.conf file, change: font_name = "/home/lyz/.mplayer/font/font.desc" to reflect your username (I havent found a way around this step, ~ doesn't work).

Creating the .deb and installing mplayer

as root:

cd /usr/src/mplayer/

tar -jxvvf MPlayerVersion.tar.bz2 (where 'Version' is your version, ie -1.0pre7)

cd MPlayerVersion

DEB_BUILD_OPTIONS="--disable-runtime-cpudetection --disable-rtc --enable-live --with-livelibdir=/usr/local/lib/live" fakeroot debian/rules binary

Make sure there aren't spaces between -- and any-of-the-options

when it's finished compiling, it will create an mplayerVersion.deb file in /usr/src/mplayer

cd /usr/src/mplayer/

dpkg -i mplayerVersion.deb

when it asks about video output choose which is right for you, if unsure just use xv

The End

launch mplayer by typing mplayer moviefile (where moviefile is the name of the file you wish to use to test mplayer)

You're done! Congrats!

Some Notes:

This also includes gmplayer. gmplayer allows you to use "skins" for mplayer, I don't usually use skins because I don't need the gui control, and the skins tend to take away from speed and quailty of movie decoding.

If you're having problems using xv as a video output, try gl or gl2; mplayer -vo help will give you a listing of your options.

Sometimes you will want to watch realplayer files that are .rm; remember that a .rm can be viewed as a simple text file with the stream location of the actual .ra is in that file. mplayer will not play the .rm but it will play the .ra stream. (Apparently there is a patch out so that mplayer will play .rm but I have never used it).

FAQ

Something broke, can you help?

I might be able to, as I said, I have tested this, and if something broke it might be a conflict in versions (stable vs testing vs unstable vs mixed system) or a simple user error. It is quite possibly due to not completely uninstalling previous versions of mplayer, this is a very important step! If all else fails, you can always uninstall the deb, and reinstall what you had before.

I'm not on debian but I want to install mplayer, any pointers?

Not really, I could point you to some sites I have found for other distros, but I have never tried them, so I can't guarantee they will work.

Why don't you include more codecs?

Are there many more? I have included the ones I primarily use, so these are the only codecs I have installed and tested.

Why do you make a .deb? How do I compile it without making a .deb?

I make a .deb because it's debian's package management tool. If you just want to compile it and not bother with the deb, the "DEB_BUILD_OPTIONS" are what would normally be passed when you compile the package by hand.

What about DVD support?

I don't have a DVD-ROM, so I have no way of testing DVD support, sorry.

Links

MPlayerHQ - Main MPlayer site

Live555.com - Home of the live.com codecs

linux.coconia.net "Installing Mplayer" - Not Debian specific, but includes some codecs that I haven't bothered with

Install libdvdcss and w32 video codecs in Debian

w32codecs this is a package of codecs needed to play multiple formats, notably DivX. (disponible. Maintainer: MirSPCM)

libdvdcss is a highly portable library for accessing and unscrambling DVDs encrypted with the CSS system

. It is part of the VideoLAN project and is used by VLC and all other open source DVD players such as Ogle, xine-based players and MPlayer.

Installing w32codecs in Debian

#wget http://www.debian-multimedia.org/pool/main/w/w32codecs/w32codecs_20060611-0.0_i386.deb

#dpkg -i w32codecs_20060611-0.0_i386.deb

Installing liddvdcss2 in Debian

#wget http://www.debian-multimedia.org/pool/main/libd/libdvdcss/libdvdcss2_1.2.9-0sarge0.0_i386.deb

#dpkg -i libdvdcss2_1.2.9-0sarge0.0_i386.deb

You can download Any hardware Architecture from Here

If you want to download Multimedia related software for debian you can download from here
If you are looking for debian multimedia mirrors check here

Installing libdvdcss2 and w32 video codecs in Ubuntu

Support for WMV, RealMedia and other formats has been bundled into the w32codecs package. This package is not available from the Ubuntu repositories due to licensing and legal restrictions.

Edit /etc/apt/sources.list file and enter the following repositories

$sudo gedit /etc/apt/sources.list

deb http://packages.freecontrib.org/ubuntu/plf/ dapper free non-free
deb-src http://packages.freecontrib.org/ubuntu/plf/ dapper free non-free

deb http://packages.freecontrib.org/ubuntu/freecontrib/ dapper free non-free
deb-src http://packages.freecontrib.org/ubuntu/freecontrib/ dapper free non-free

$sudo apt-get update

$sudo apt-get install w32codecs libdvdcss2

If you want to download and install .deb packages you can download and install

$wget -c http://packages.freecontrib.org/ubuntu/plf/pool/dapper/non-free/w32codecs_20060611-1plf1_i386.deb

$sudo dpkg -i w32codecs_20060611-1plf1_i386.deb

$wget -c http://packages.freecontrib.org/ubuntu/plf/pool/dapper/free/libdvdcss2-dev_1.2.9-1plf4_i386.deb

$sudo dpkg -i libdvdcss2-dev_1.2.9-1plf4_i386.deb

You can download Any harware Architecture from Here

Using above download locations you can install more most of the mutimedia codecs for debian and ubuntu

Tuesday, February 3, 2009

Howto Change Macintosh Safari's default search engine

This article describes a way of changing Safari's default search engine. This instruction assumes you are familiar with the vi text editor. First, quit Safari and make a backup copy of the application. Then follow these steps:

To add to all the above:

To change the default from www.google.com to www.ixquick.com do the following:

Fire up Terminal and cd to
/Applications/Safari.app/Contents/MacOS

copy (cp) the file Safari to Safari.old (in case you make a mistake)

Edit the Safari file with vi or your favorite editor:
vi Safari

search for the string:
http://%@.google.com/%@?q=%@&ie=UTF-8&oe=UTF-8
And replace it with:
http://%@.ixquick.com/do/metasearch.pl?&query=%@

Make sure the string is exact (it has the same length as the original string).

Save the file and quit the editor.

Fire up Safari