From a9a3d766d05b6c7d24763e9276c5f7cc6ef1b981 Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Tue, 27 Mar 2018 11:41:56 +0200 Subject: bin/wtf new --- bin/wtf | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100755 bin/wtf diff --git a/bin/wtf b/bin/wtf new file mode 100755 index 0000000..0a48293 --- /dev/null +++ b/bin/wtf @@ -0,0 +1,40 @@ +#!/bin/sh + +# usage: wtf $file + +# Find out what package provides the given file. +# $file may be a single file name or an absolute path. + +# shellcheck source=../conf/default.conf +. "${0%/*}/../conf/default.conf" + +hash=$( + printf '%s' "$*" | \ + sha512sum | \ + awk '{print $1}' +) + +result=$( + # shellcheck disable=SC2016 + { + printf 'SELECT CONCAT(`repositories`.`name`,"/",' + mysql_package_name_query + printf ')' + printf ' FROM `binary_packages`' + mysql_join_binary_packages_architectures + mysql_join_binary_packages_repositories + mysql_join_binary_packages_file_providers + mysql_join_file_providers_files + printf ' WHERE `files`.`absolute_name_hash`="%s"' \ + "${hash}" + printf ' OR `files`.`name_hash`="%s"' \ + "${hash}" + } | \ + mysql_run_query +) + +if [ -z "${result}" ]; then + printf 'Huh, I don'"'"'t know that one.\n' +else + printf '%s' "${result}" +fi -- cgit v1.2.3-54-g00ecf