Утилиты для поиска репозиториях + AUR

А есть ли программулина по поиску файла в неустановленных пакетах?

например: нужна команда к примеру xset - вводим в поиск этот xset а программулина выдает в каком пакете есть файл с таким названием!


нечто подобное есть в убунтах,сусях(cnf вроде)!

ну как то так, надеюсь понятно написал
есть. pkgfile:
$ pkgfile xset
extra/xorg-server-utils

$ pacman -Qo /usr/bin/pkgfile
/usr/bin/pkgfile принадлежит pkgtools 21-1
systemd должен умереть.
Да, AUR тут боком не стоял. Если придумаешь способ как узнать, какие файлы будут в пакетах из AUR при различных параметрах сборки, сообщи авторам :-D
systemd должен умереть.
h4tr3d
$ pacman -Qo /usr/bin/pkgfile
/usr/bin/pkgfile принадлежит pkgtools 21-1
Пакман не так давно поумнел (опопсел?)
$ pacman -Qo pkgfile 
/usr/bin/pkgfile принадлежит pkgtools 21-1
последнее было к тому что бы показать в каком пакете лежит эта команда :))))) ибо оно по неустановленным не ищет, хотя было бы логично сделать что-то вроде pacman -So :-D (ну сделано же -Qs и -Ss для установленных и в репозитории)
systemd должен умереть.
Да я к тому, что раньше пакману в качестве аргумента -Qo надо было указывать полный путь. Теперь достаточно имени файла. Находящегося в PATH.
Kevin Detry
От себя, пожалуй, тоже добавлю: bauerbill
Обёртка для powerpill, который является обёрткой для pacman. Пакеты качает с помощью aria2 (а значит несколько пакетов сразу и в несколько потоков).
Качает и устанавливает пакеты как из репозиториев, так и из ABS, AUR, CPAN и Hackage (надо в конфиге включить).
Сам пользуюсь, всем устраивает, очень доволен.
вообще не понравился bauerbill, где принцип KISS??? зачем так усложнять???????? куча параметров прописывать, помнить их, да в баню его.
вот yaourt реально KISS, нужен изврат используй параметры, хочешь тупо искать и выбирать пакеты по номеру - пожалуйста, всё просто и не напрягает.
То что mehanoid привёл немного упростил.
#!/bin/bash
function get_aur_pkg_version
{
  get_page "http://aur.archlinux.org/rpc.php" "type=info&arg=$1" | sed -r 's/.*"[Vv]ersion":[ "]*([^",]*).*/\1/'
}
function get_page
{
  if [ -z "$2" ]; then
    wget -q -O - "$1"
  else
    wget -q -O - "${1}?${2}"
  fi
}
  NOT_FOUND='{"type":"error","results":"No result found"}'
  IGNORED_PKGS=" "
  # Jozef Riha submitted this next line to replace my "hacky" cat/sed/grep/sed pipe :)
  for LINE in $(sed -n "/IgnorePkg/s/^\s*IgnorePkg\s*=\([^#]*\).*$/\1/p" /etc/pacman.conf); do
    IGNORED_PKGS="$IGNORED_PKGS $LINE "
  done
  pacman -Qm | while read LINE
  do
    PKG=$(echo $LINE | cut -d ' ' -f1)
    [[ " $IGNORED_PKGS " =~ " $PKG " ]] && continue
    VER=$(echo $LINE | cut -d ' ' -f2)
    AURVER=$(get_aur_pkg_version $PKG)
    if [ -z "$AURVER" ] || [ "$AURVER" == "$NOT_FOUND" ]
    then
      continue
    else
      #CMP=$(compare_package_releases $VER $AURVER)
      #[ "$CMP" == 'lt' ] && echo "$PKG-$AURVER"
      [ $(vercmp $VER $AURVER) -lt 0 ] && echo "$PKG $VER => $AURVER"
    fi
  done
Скрипт выводит списком пакеты, которые обновились с указанием текущей версии и обновлённой.
 
Зарегистрироваться или войдите чтобы оставить сообщение.