Gnome-like activity overview in other desktop environments

How to easily emulate shell’s most famous feature in a different environment with Xfdashboard

xfdashboard_overview

Part 1 – Xf… Whaat?
The activity overview is, probably, the most revolutionary feature introduced with the birth of Gnome Shell. While not every user loves this innovation, it clearly provides a new way of using our workstations. By pressing the “Meta” key, we can now have the opportunity to navigate through windows, installed applications, and active workspaces.
Since Gnome is not the only one choice we can take nowadays, the project ‘xfdashboard’ tries to recreate the same user’s experience inside Xfce. Moreover, this is nothing but an application, so it’s not bound to a specific DE and can be easily used elsewhere.

On Fedora, we just have to pick it from the standard repos:
$ dnf install xfdashboard xfdashboard-themes

The second package consist in additional themes which can be applied to this tool.

Part 2 – Xfdashboard: how does it look, anyway?

xfdashboard_appslist
Stop dreaming. The overall look isn’t as pretty as Gnome Shell’s one. It looks simpler, less modern and way rawer. Is this a problem? No, not really. In my opinion, it surprisngly matches with the window manager I’m using at the moment, which is ‘my dear old friend’ Fluxbox. I tend to use it because of its functionality. Well… If I’d want something like Gnome, I’ll indeed use Gnome, don’t you agree?

Part 3 – Xfdashboard: features

xfdashboard_search
As I said some lines ago, xfdashboard is an application. It’s not an applet, a plasmoid, a screenlet, a widget, a whathehelldoyawant, that is strictly coupled with a specific environment. I bound it to “Meta+Z” on Fluxbox. On my laptop which keeps using the ‘powersave’ cores’ governor, the waiting time for the interface to appear, lasts about three seconds. After that, xfdashboard is completely ready. Without touching the mouse, we’re able to search for the desired software. It’s also trivial to switch the foucsed window nor the active workspace. Last but not least, there is a simple list of favorites, which can be easily managed through ‘drag and drop’.

Part 4 – Ehm, ok Giulio… But… Why?!?!1!?!one!? Ya know, I’ve been using Xfce since Gnome 2 was replaced by that kind of crap…
I might understand (no, not really) this point of view, but, as little as I know, xfdashboard is not an official part of the Xfce project itself. It’s just an add-on, a handy tool worth knowing of, which can customize the user’s experience. Nobody is actually forced to use it.

Exploratory Testing and Fedora

1) What is Exploratory Testing?

As Wikipedia notes, “Exploratory Testing” is a term coined by Cem Kaner back in 1993. There are tons of material worth reading around the net about this topic, but the key point is that it’s somehow a different approach to software testing. Instead of following specific steps, the tester should try to go behind the obvious. Imagine, for example, a pioneer who needs to walk through an unexplored part of territory, or a tourist visiting an unknown city. They certainly have some ideas and documentation about the places they are seeing for their first time, but they might not be aware of the most dangerous places nor some “hidden gems” which are worth seeing.

2) How do I intend Exploratory Testing?

The mysterious mechanisms behind an IT Project are not really so different from these scenarios we’ve just imagined. While some sheets describes pragmatic techniques (I’m thinking about James Bach’s interesting “Testing procedure for Microsoft Windows Logo”, for example) and some books explains other useful schemes (Elisabeth Hendrickson’s “Explore It!” is a highly recommended reading) the concept is that we need to use our imagination. We should try to avoid our comfortable patterns, open our eyes and just be curious. I also like to take notes whenever I am testing an unstable release and I’ve found that it’s useful in order to reproduce formerly unexpected bugs. But, again… The effectiveness of Exploratory Testing depends on how we try to look into the software with different points of view. I remember a recent report by Fedora’s proven tester Kamil Páral (kparal), who discovered a hidden issue of gnome-keyring. Then, even if we are precise, experienced and certified developers, our grand-parents might probably be better explorers than us, for example. That’s because strange, unexpected and wrong behaviors tend to trigger strange, unexpected and wrong events.

3) Exploratory Testing and Fedora

Being Fedora what we could define “a bleeding edge distro”, whenever we perform Exploratory Testing, we certainly have the opportunity to raise the quality of the shipped packages. I’d also say that this process must not substitute automated/scripted testing, which is a fundamental aspect of software development. Modern approaches like Test Driven Development and Behavior Driven Development can assure that the key parts of the application works as intended. Moreover, the Test Cases designed by Fedora QA are handy procedures that check whether the release criterion are met or not and assure that the main features aren’t affected by severe bugs. Indeed, Exploratory Testing is always helpful in order to highlight surprises which aren’t currently covered by common situations and recommended steps.

4) Resources:

Is creating a new distro worth the time?

Today I’d like to write about a critical part of Open Source.

While learning from tutorials and improving others’ snippets are obviously awesome practices, the Open world often suffer from schisms. Perhaps that’s even the cause why hardware’s manufacturers don’t always support Linux well.

Actually, instead of working on existing projects, lots of users insist on what I call “reinventing the wheel”. Nowadays it’s easy to create a “new” operating system:  lots of distros actually offer powerful tools for building a customized version.

This software is certainly helpful. For example, we can simply deploy our own copy of Fedora on a USB stick. We could also write a live of Ubuntu for testing hardware we don’t know. Open Suse also has a site which showcases users’ creations. I’m sure many more out there offer similar chances.

To stay on top and offer a reliable system, top-distros have rules (especially for new packages to be submitted). I think that too many people don’t like to learn how a serious and well organized team works. Starting a new project is maybe simpler: but will it reach the popularity and the nowadays numbers of – for example – Debian?

It’s a pity that lots of ideas don’t reach the light because they only works on a single system and aren’t accessible for people who use different technologies.

The point is… In 2014, do we need a new Bill Gates? How many benefits does the community get from a Steve-Jobs-wannabe? Wouldn’t be better and more constructive to contribute to an existing project with people all over the world?

Fedora: how to switch from KDM to LXDM

LXDM

The DM (Display Manager) is an application shown at the end of the boot process which allow users to log in, with an eye-candy interface. Typically every DE (KDE, Gnome etc.) has got a DM shipped and configured by default.

KDM is the default DM of KDE. It’s themeable and configurable via the standard KDE’s graphical tool. However, there are lots of alternatives for people who seek a simpler behaviour.

The piece of software explained here is called LXDM. Even though it has been developed for LXDE, it doesn’t need lots of dependencies. In order to apply LXDM, we have firstly to install it by root.

# yum install lxdm

Since it’s ready, we can customize it a bit. lxdm-config it’s an application which creates available results system-wide, so we must use root again.

# lxdm-config

lxdm-config is an useful tool to customize the login screen

lxdm-config is an useful tool for customize the login screen

As every LXDE’s app, this tool is simple, clean and easy to use.

Clicking on the icon (the pig on the screenshoot) we are able to change the user’s face. In the same row, we can also enable the automatic login

We can also change wallpaper clicking on the folder under my name (giulio). We are far from KDE’s themes, but this time the configuration is not an needle in your eye.

So… We customized the look and feel of our DM. Now, we have to get rid of the previous one and setup LXDM. Most of the tutorial which I have found are deprecated, since systemd changed Fedora’s way of living a lot. The steps are the following:

# systemctl disable kdm.service

# systemctl enable lxdm.service

Once rebooted, we can admire our new, lightweight and customized login screen!

How to change theme in Plymouth

https://i1.wp.com/www.unitbit.it/sites/default/files/field/image/800px-Tours_Fedora10_012_Plymouth_Boot.png

Plymouth is the default bootsplash in Fedora, since version 10.

Standard repos include some additional themes, so we can change the graphical behaviour of our distro.

Since we are making changes to the whole system, all the following input must be typed by root.

First of all, we are able to know which theme is running at the moment:

# plymouth-set-default-theme

We could also know which themes are already installed:

# plymouth-set-default-theme –list

As I said before, Fedora’s repo include some alternatives:

# yum search plymouth-theme

I love the solar theme (the on of the image on the top of this post), which was the default of an old release. If I want it again, I have to install it:

# yum install plymouth-theme-solar

Then, I should set it up with the following command (the -R parameter is important because we have to rebuild the initrd):

# plymouth-set-default-theme solar -R

Scegliere il DNS più veloce per noi

 

Recentemente ho trovato un’interessante guida relativa a Chakra.

Questo che segue è una adattamento per *buntu e derivate. Il tutto è stato testato su una liveusb contenente Linux Mint 13 Maya.

In sostanza, Namebench è uno script python che confronta vari server DNS per indicarci quale sia il più adatto per la nostra connessione.

Per prima cosa, installiamo tutto l’occorrente, eseguendo i vari comandi in sequenza:

sudo apt-get install python-tk
wget http://namebench.googlecode.com/files/namebench-1.3.1-source.tgz
tar xvfz namebench-1.3.1-source.tgz
cd namebench-1.3.1
./namebench.py 

 

Se siamo in una sessione grafica, il programma si avvia mostrando una spartana (ma efficace) finestra creata con le librerie tk di python

 

Dopo aver scelto il browser preferito (nel mio caso Firefox), occorre lanciare il benchmark. Non serve impostare nient’altro. Dopo qualche minuto necessario al test, sul terminale vedremo queste righe:

> Saving report to /tmp/namebench_XXXX-XX-XX_XXXX.html
> Saving detailed results to /tmp/namebench_XXXX-XX-XX_XXXX.csv
> Opening /tmp/namebench_XXXX-XX-XX_XXXX.html

Successivamente il browser si aprirà con l’interessante risultato:

 

I server DNS migliori sono quelli evidenziati in alto a destra (10.10.10.10, 11.11.11.11, 12.12.12.12 nel test preso in esame).

La via più semplice per impostare questi indirizzi, è utilizzare l’applet di Network Manager normalmente presente in basso a destra. Nella gestione delle connessioni, selezioniamo la nostra preferita, clicchiamo su “modifica” e navighiamo nella tab “Impostazioni IPv4” .

Qui occorre semplicemente cambiare il metodo in “Automatico (DHCP) solo indirizzi” e incollare gli ip dei DNS separati da virgole, come da esempio qui sotto:

 

L’ultimo passaggio sta nel riavviare il servizio network-manager e a controllare che tutto sia andato a buon fine:

sudo service network-manager restart
nm-tool | grep DNS

 

Quest’ultimo comando, se tutto è andato per il verso giusto, ritornerà l’indirizzo corretto dei DNS precedentemente impostati:

    DNS:             10.10.10.10
    DNS:             11.11.11.11
    DNS:             12.12.12.12


Local backup with rsync

rsync is a very powerful and versatile tool for managing your backups.

The algorithm is its main feature: this piece of software can recognize the updates you did on the original files. The backup’s speed is increased because it transfers only the changes that have been made. In this tutorial, we’ll learn how to perform a simple backup of our /home using an external drive.

WARNING: THIS METHOD IS AMAZING BUT ALSO DANGEROUS. AN IMPROPER USE COULD DESTROY YOUR DATA PERMANENTLY, SO PLEASE USE IT CAREFULLY AND AT YOUR OWN RISK.

Anyway, the basic syntax is extremely easy to understand:

rsync [OPTION…] SRC… [DEST]

OPTION = optional parameters

SRC = source of the data

DEST = destination of the backup

If the source has got an EXT-4 filesystem, I would recommend this way:

rsync -avHu –delete –progress –stats /home/juliux /run/media/juliux/ExtDisk

Let’s analyze the syntax:

/home/juliux is, obviously, the directory where my data are normally stored.

/run/media/juliux/ExtDisk is the path of my external hard drive.

a = archive mode: rsync works in a recursive way inside the directories. It also preservs symlinks, permissions, dates, groups, owners, devices and special files. So, this parameter tells rsync to save the Unix’ attributes of our files.

-v = it throws some details about the whole process

-H = tell rsync to preserv Hard links too.

-u = omit the files which are newer in the destination

–delete = delete the destination’s files which are no longer present in the source

–progress = it shows us the “on going” of the whole process

stats = rsync summarizes some stats at the end of the backup

If the source has got a FAT32 filesystem, This way works way better:

rsync –progress –delete –modify-window=1 –update –recursive –times –size-only –stats /home/juliux/ /run/media/juliux/FatDisk

Obviously, this filesystem doesn’t support the Unix’ standard for permissions and ownership.

/home/juliux is, again, the directory where my data are normally stored.

/run/media/juliux/FatDisk is the path of an external drive with a FAT32 filesystem.

–modify-window and —times are required because FAT32 threats dates in a different way than Unix’ one.

update it’s the same as “u“, explained with the other method.

size-only = with this parameter, ryncs omits files which haven’t changed size.

That’s all for now! I still recommend to use this tool carefully. My advice is to try and learn how to use it with small directories first. PAY ATTENTION, as an improper use could destroy your data.

SPE: How to fix “iCCP: known incorrect sRGB profile” message in Fedora

 

Once I installed Fedora 20 on my laptop (about a month ago), I encountered a small issue while using SPE.

Everytime I launched the IDE, I had been receiving an annoying popup telling me:

iCCP: known incorrect sRGB profile

After some researching, I understood that it was due to a new version of libpng which search for bad nor old sRGB profiles.

Then, I simply fixed it searching for the software’s directory on my system and converting all the PNG included there:

# yum install ImageMagick

# cd /usr/lib/python2.7/site-packages/spe/

# for i in `find . | grep .png`; do convert “$i” -strip “$i”; done

I must thank this topic for the correct solution.

EDIT: I just noticed that WordPress somehow lists the commas of the third input in a wrong codification. So, you should copy the last command manually. I apologize for this inconvenience.