aboutsummaryrefslogtreecommitdiff
path: root/repology
blob: 9d34172688e4e77bce6cfb61d6262d0bae0b76d7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/bin/sh

# elvis: repology        -- Search Linux distro package metadata with repology.org

# Author: B. Watson (yalhcru at gmail)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.

. surfraw || exit 1

w3_usage_hook() {
	cat <<EOF
Usage: $w3_argv0 [options] [search words]...
Description:
  Surfraw search Linux distro package metadata
Local options:
  -p,-pkg,-package              Search package names
  -m,-maint                     Search maintainers by email address
By default, if there's an @ in the search term, a maintainer search is done,
otherwise a package search.
EOF
	w3_global_usage
}

w3_parse_option_hook() {
	opt="$1"
	optarg="$2"
	case "$opt" in
		-p|-pkg|-pac*)  repo_target="/projects/"      ;;
		-m|-main*)      repo_target="/maintainers/"   ;;
		*) return 1 ;;
	esac
	return 0
}

w3_config
w3_parse_args "$@"

[ -z "$repo_target" ] && case "$w3_args" in
	*@*) repo_target="/maintainers/" ;;
	*)   repo_target="/projects/"    ;;
esac

url="https://repology.org/${repo_target}?search=$( w3_url_of_arg $w3_args )";
w3_browse_url "$url"