Ad-free browsing with konqueror or “How to block flash only sometimes”

Normally I do not really care about advertisements on homepages because I seldom stay long on homepages which are offering so many ads.

But there is one special exception: ther german news site heise.de is a real good IT news source (for example more up2date than slashdot is) and I like to spend time there reading the articles.

But there is a problem: the blinking flash advertisements (you have to click on an article to see them). Personally I do not want to be enlighted about the “facts” of any microsoft study about whatever they sell, and don’t like it to read a news article about for example the LSB accepted as an ISO standard when there a blinking and annoying flash videos from IBM going on in the middle of the text. It distrubes me.

Here the solution: You can turn of all plugins at once for specific domains. And flash is, besides the realplayer, a plugin from konquerors point of view. So click on Settings -> Configure Konqueror, and choose “plugins” in the left scroll area. There is a button called “domain-specific settings” which brings you to a unimpressive field where you can put in domains – so go ahead, type in http://www.heise.de and visit the page again. And you see: no flash animations anymore! You have to be a little bit careful about the domain, it doesn’t take wildcards for me, so you really have to put in http://www.heise.de and not heise.de or *.heise.de.

Ok, the easy-to-annoy people will now complain about the fact that there are still the gifs: you are right, but Konqueror from KDE 3.5 (I use the beta) comes with a normal ad-blocker, so that isn’t a problem, too: you just click at the graphic with the right button, and click on “Block Image” – that’s all.

But, as usual when you start talking about advertisments on high quality pages: think about what you are doing when you block these advertisments – the sites earn money with it, a lot of money to support themselfes to make the site so high quality. I for myself only block these stupid gifs and flash animations, and in case of heise.de, I buy on of their (real good) magazines.

But: the advertisment people also have to learn that there is a border they shouldn’t cross when it comes to advertisements: Take it in the google way, smooth in the background, and there wouldn’t be a reason for blocking. Take it with animations which are starting to annoy your readers, and the people will start blocking.

And for me: no more IT news bundled with “Get the facts” advertisements – that’s the way I like 😉

smart on suse 10.0 – german translation available

After the english original and the italian translation by kOoLiNuS we now have a german translation of the short tutorial how to set up smart on SUSE LINUX 10.0 with a bunch of channels and, almost more important, with a bunch of mirrors: check the article in the german suse wiki.

Another thing to add: I’ve checked my logs today, and the’ve told me that still a lot of people are comming to my blog when they search for information about the “media transfer protocol” and linux – I hope that we will see some support their in the future, although it could be quite difficult because of Microsoft’s license terms :-/

And their are still quite a lot of people who access my blog searching for yum and suse and which are reading my short yum tutorial – for these people: please drop a comment at the novell bugzilla and point out why yum is so important! I still have a little hope that they will change yast to use yum as a backend and not their own system. Or, even better, that they will help developing yum and will then use it as an backend. 🙂

smart and suse – in italian :-)

Thanks to KOoLiNuS there is a italian translation of my smart tutorial around, just check the link to his blog.

If you are able to tranlate in any other language, you are very welcome: the tutorials are GFDL’ed, so translate as fast as you can. I will write a german translation as soon as I find time for it.

Besides that, I tried several updates yesterday with smart – it worked quite well although it get stucked two or three times. I had to kill and restart it.
If you experience the same problem: smart will not find and interesting upgrades although it hasn’t installed all packages – to fix the problem just update all channels again.

If on one of the mirrors one of the new channels is missing (for example, kde-satble or gnome), just update this special channel until it works.

A last personal thing: Since August I helped working on several Linux related articles in the german wikipedia, and now the most reviews are over, and some of the articles already got the mark “excellent” or “worth reading”. It’s always nice to see that communities work quite well 😉

[Howto] Set up smartpm on SUSE LINUX 10.0

Here is a small tutorial how to set up Smart Package Manager, smart or smartpm in short, on SUSE LINUX 10.0.

I will not only show where you have to download what, but also how to import channels and mirrors (which is the most important thing!).

Background

After having fun with setting up a SUSE LINUX system with Fedora Core’s yum (yes, I know, it was originally invented to improve yellowdog’s update system, but its better known from Fedora Core…) I thought about how to solve the problem about the missing update channels.

I knew that apt provided some update channel information, but for obvious reasons (no mirror system is the first and main reason) I didn’t wanted to choose apt as a solution.

Then I read loki’s (aka guru) call for testers of smartpm, and I decided to give it another try.

The advantage of smartpm is, that, besides the ability to use mirrors it is able to use different repository structures. So I was able to use the apt-repository structure which provides more channels then the actual yum structure (I hope they will fix the problem around yum, I do not really like the apt structure, sorry), and so I was able to build up a package management with update channels which is capable of using and choosing mirrors in a similar way as yum is.

Another nice feature is that smart has a nice gui as well as a nice command line. Ok, the gui needs a lot of improvement, but at the moment it’s maybe to early to start asking for usability 🙂

So let’s give it a try:

What to do

First you have to get the smart packages for SUSE 10.0. You can download them here from guru’s repository.
Download and install it.

Set it up

The problem is: smart has no (!) text files to configure, you must do this all by hand, but that’s not a problem.
So: loki did a nice job preconfiguring smart, but at least from my point of view he stopped in the middle of the way.

We will add some other channels and a bunch of mirrors to be sure that our system will run nice and smooth.

smart channel --add http://www.personal.uni-jena.de/~p1woro/SUSE-smart-examples/channels.txt
will add the most common used channels like java, update, packman-i686, extras, usr-local-bin, etc.
But be a little bit careful, there are some beta things included, so you maybe want to uncheck the channels suse-100-apt-kde-unstable, suse-100-apt-usr-local-bin and suse-100-apt-suse-projects! You can do this task with the gui: smart --gui brings it up.

The next step is to import the mirrors which are the reason why we do all this stuff:
smart mirror --add http://www.personal.uni-jena.de/~p1woro/SUSE-smart-examples/mirrors.txt
After this your system is fully set and ready to use.

Play and report

Start the gui with smart --gui, play around, and report bugs to the tracker.

A last call from me: please, if you see other mirrors, report them to me or in some of the suse mirrors – I will add them to the config list when I find them.

And now: have fun with SUSE LINUX 10.0 and smartpm! 🙂

This text is published under GFDL 1.2

[Howto] Setting up yum on SUSE LINUX 10.0

Update (2006-05-25)

This text refers to Suse 10.0 – if you are searching for yum support on Suse Linux 10.1, look at the new howto: yum on Suse Linux 10.1. There you will also find additional information about yum like how to add yum-plugins and what they can be used for.

This howto about Suse 10.0 and yum is no longer maintained since I do not even have a working Suse 10.0 anymore. Howevers, since this article is the most successfull I’ve ever written I updated something: originally there was no update repository provided for yum for Suse 10.0. Due to a bug report I filled in the Novell folks added it (thanks!) and I’ve added this information here. But: this is not tested, so if you use it, please let me know if it works! If you run into any problems, post them here, I will try to help as much as I can!

The original, unchanged posting

After thinking, testing and writing so much about SUSE LINUX 10.0 I want to write a short Howto about it in english, too.

If you want to know more, have a look at the yum article in the german susewiki, it is much more detailed. Maybe there will be a translation in the future in the english wiki, too?

But now, let’s start:

Why?

Why should I use yum and not yast? Well, yast is nice, but has some disadvantages: It can’t check for gpg keys, you have to trust the mirrors you add. And, speaking about mirrors, yast has no real mirror management for one source. Especially in these times the most and best known SUSE mirrors are very slow or just closed down, so you have to add other sources in yast. But yast needs your clicks when a mirror is not reachable, and if you enter several sources just as mirrors, it checks every single source – that takes quite a long time!
A last reason (which is not important know because SUSE LINUX has a ugly workaround) is that yast is not able to handle packages for different architectures – it can only install packages for one architecture.

The advantages of yum

As you can imagine, yum can do it better: yum can install packages with the same name but for different architectures (which could be important for x86_64 users who sometimes can only install x86_32 packages), and it can check for the gpg keys.
But, at the moment the most important thing: yum can handle mirror lists. So, if a server times out, is unreachable or whatever, yum will automatically switch to another server – on the fly, without any user interaction, without the need of a new synchronization to the new server, and so on.

The (actual) disadvantages of yum

In a perfect world yum gets the original pgpg key and the mirror list from the main server but uses server from this list to download all the package information and the packages. Fedora Core has this perfect world already, but there are no mirror lists for yum on the suse servers.
And in the perfect world all important servers and directories are configured to be used by yum (there must be a “repodata” directory with the important information). But at the moment there are only the most important direcotries supported: inst-source, inst-source-java, update, GM and packman (only on the main mirror). The supplementary directories are not supported.

A last thing: yum does not have a gui – but there are some good guis around. SUSE LINUX 10.0 provides kyum as a kde based gui, it’s nice enough to work with it 🙂

How to configure it

If you call yum, it first checks its configuration file /etc/yum.conf. This file was used to store repository information in former times, too, but with the newer yum versions you have the possibility (and you definitely should use this) to store all information about the repositories in /etc/yum.repos.d/.

A file in this directory looks like this:

[base]
name=SUSE LINUX 10.0 - Base
#baseurl=ftp://ftp.gwdg.de/pub/opensuse/distribution/SL-10.0-OSS/inst-source/suse
mirrorlist=/etc/yum.repos.d/base.mirrors
enabled=1
gpgcheck=1
gpgkey=ftp://ftp.gwdg.de/pub/opensuse/distribution/SL-10.0-OSS/inst-source/pubring.gpg

The first option shows the name – this must be unique because yum uses it to identify the repository and the cached data about it.
The second option, the name field, is for the user to know what he has configured.
baseurl gives the server and the directory where yum can find the packages. This is similar to the address of yast configured sources. But in this case its commented out because we use a powerfull feature: the often mentioned mirrorlists!
The url to the mirrorlist is part of the field mirrorlist – due to the fact the no server provides them, we have to make our own. I will show some mirrorlists later.

The other options are dealing with the actual status of the repository (if it is enabled and yum should use it, or not) and with the gpg key.
There are a lot of other options to specify, like excluding or including special packages, and so on, but we do not need them yet. Check the manpage or the given link to the susewiki or drop a note or contact me or whatever, if you are more interested.

Some useful repos and mirrorlists

Because of the fact that yum does not come preconfigured with SUSE, you have to do all by yourself (except the configuration of yum.conf).

I picked up the repositories and directories I use and which already supporting yast, and wrote my own mirror lists, which are locally stored in the same directory. So, greb these files, copy them to /etc/yum.repos.d/, check them (or believe that I am not evil), and start playing with yum.

The files:

How to use

There is a lot of information around how to use yum – the most important commands are listed here:

  • yum install foo – install package foo
  • yum remove foo – remove package foo with dependencies
  • yum search whatever – search for this string
  • yum update foo – update only package foo
  • yum update – update the whole system
  • yum info foo – give the infos about this pacakge
  • yum provides foolibrary – which pacakge has this library?

Extra: using local repositories

If you have a special repository which you really like, but which does not support yum, you can use a trick: make a local copy of the files via rsync or whatever, and use the directory of the files as a local repository:

You will need the small programm createrepo for this – you can get it – sure – with yum:
yum install createrepo

After this, copy all the rpm-files you want to use to a special place:

mv *.rpm /var/cache/myrepo
createrepo /var/cache/myrepo

In /var/cache/yum/myrepo will appear a new directory called repodata. Now place the *.repo file in /etc/yum.repos.d/:

[myrepo]
name=my cool repo
baseur=file:///var/cache/myrepo
enabled=1

The really cool people will use cron-jobs for synchronizing and the new creation of the repo-files – do it, if you like it. But I hope that the most SUSE-dealing repositories and directories will offer yum repodata soon. Or that yast will change its backend 😀

I hope this howto helped at least one person – if this is the case, please drop a note, it’s always nice to get feedback besides the counter.

So: Have fun with yum on SUSE LINUX 10.0 🙂

This text is published under GFDL 1.2