Command not found v openSUSE

- Kategorie:

V distribuci Ubuntu existuje utilitka command not found, která automaticky nabízí instalaci potřebného balíčku, pokud není příkaz nalezen. Na portaci tohoto programu do openSUSE 11.0 pracuje Pavol Rusnák. Benjamin Weber na svém blogu nabízí řešení, které funguje i v současné verzi openSUSE.

Do souboru .bashrc ve vašem domovském adresáři, stačí vložit následující kód:


export PROMPT_COMMAND='
if [ $? -eq 127 ]; then
history -a;
COMMAND=$(tail -n 1 $HISTFILE);
SQL="SELECT name from resolvables WHERE id IN (SELECT resolvable_id FROM named_capabilities WHERE name_id IN (SELECT id FROM names WHERE name LIKE \"$COMMAND\")) LIMIT 1;"
PACKAGE=$(echo $SQL | sqlite3 /var/cache/zypp/zypp.db);
PACKAGE=${PACKAGE:="-"};
if [ $PACKAGE != "-" ]; then
echo $COMMAND is not installed\; Try \"sudo zypper install $PACKAGE\" to install it.;
fi;
fi'

Výsledek pak může vypadat takto:

benji@lcars:~> kopete
bash: kopete: command not found
kopete is not installed; Try "sudo zypper install kdenetwork3-InstantMessenger" to install it.

Volby prohlížení komentářů

Vyberte si, jak chcete zobrazovat komentáře a klikněte na „Uložit změny“.

Hotovo :)

Command-not-found je hotovy, zaujemcovia si mozu vyskusat balicky z BuildService.
Presny navod je uvedeny tu: http://lists.opensuse.org/opensuse-factory/2008-02/msg00386.html (english only)

Aktivní uživatelé

UživatelBody
Aidamos2299
VojTEKK2268
Ilfirin1343
jiri.vetvicka1127
ra100620
diamonds-notebook366
djs_core288
xhc267
JirkaZ266
fipa211

Hackweek živě

Hackweek

Anketa

Jak jste spokojeni s nejnovější verzí openSUSE 12.1: