diff --git a/conf/03-apse.conf b/conf/03-apse.conf
index be627d4..01ef942 100644
--- a/conf/03-apse.conf
+++ b/conf/03-apse.conf
@@ -3,69 +3,75 @@
apse_enabled[0]=1
apse_site_name[0]="source0"
-apse_enabled[1]=1
-apse_site_name[1]="http://sourceforge.net"
+apse_enabled[1]=0
+apse_site_name[1]="https://sourceforge.net"
apse_enabled[2]=1
-apse_site_name[2]="http://fileforum.betanews.com"
-apse_uri[2]="http://fileforum.betanews.com/search?search_advanced=Search+Fileforum&os%5B%5D=12&alphabeta=R&title="
-apse_put_fields[2]=""
-apse_error_msg[2]="No releases "
-apse_grep[2]=""
-apse_sed[2]="s,.*
\${search_name}[^<]*[ ]\([^ <]*\)
.*,\1,pi"
+apse_site_name[2]="https://repology.org"
+apse_uri[2]="https://repology.org/api/v1/projects/\${search_name}/"
+apse_error_msg[2]="Not found"
+apse_jq[2]="try [.\"\${search_name}\"[] | select(.status | contains(\"newest\"))][0] |.version"
-apse_enabled[3]=1
-apse_site_name[3]="http://linux.softpedia.com"
-apse_uri[3]="http://linux.softpedia.com/progFinder"
-apse_put_fields[3]="search_term="
-apse_error_msg[3]="No results "
-apse_grep[3]=".*,\1,pi"
+#apse_enabled[2]=0
+#apse_site_name[2]="http://fileforum.betanews.com"
+#apse_uri[2]="http://fileforum.betanews.com/search?search_advanced=Search+Fileforum&os%5B%5D=12&alphabeta=R&title="
+#apse_put_fields[2]=""
+#apse_error_msg[2]="No releases "
+#apse_grep[2]=""
+#apse_sed[2]="s,.*\${search_name}[^<]*[ ]\([^ <]*\)
.*,\1,pi"
-apse_enabled[4]=1
-apse_site_name[4]="http://gnomefiles.org"
-apse_uri[4]="http://gnomefiles.org/content/search.php"
-apse_put_fields[4]="search=Search&text="
-apse_error_msg[4]="No entries\. "
-apse_grep[4]=""
-apse_sed[4]="s,.*\${search_name} \([^&]*\) <.*,\1,pi"
+#apse_enabled[3]=0
+#apse_site_name[3]="http://linux.softpedia.com"
+#apse_uri[3]="http://linux.softpedia.com/progFinder"
+#apse_put_fields[3]="search_term="
+#apse_error_msg[3]="No results "
+#apse_grep[3]=".*,\1,pi"
-apse_enabled[5]=1
-apse_site_name[5]="http://freecode.com"
-apse_uri[5]="http://freecode.com/projects/"
-apse_put_fields[5]=""
-apse_error_msg[5]="404 Not Found"
-apse_grep[5]="/releases/"
-apse_sed[5]="s,.*\([^ <]*\).*,\1,pi"
+#apse_enabled[4]=0
+#apse_site_name[4]="http://gnomefiles.org"
+#apse_uri[4]="http://gnomefiles.org/content/search.php"
+#apse_put_fields[4]="search=Search&text="
+#apse_error_msg[4]="No entries\. "
+#apse_grep[4]=""
+#apse_sed[4]="s,.*\${search_name} \([^&]*\) <.*,\1,pi"
-apse_enabled[6]=1
-apse_site_name[6]="http://sourcewell.berlios.de"
-apse_uri[6]="http://sourcewell.berlios.de/appsearch.php?by=Importance&search="
-apse_put_fields[6]=""
-apse_error_msg[6]="No Application found"
-apse_grep[6]="appbyid.*\${search_name}[^a-zA-Z].*Stable"
-apse_sed[6]="s,.*\${search_name} \([^ <]*\).*,\1,pi"
+#apse_enabled[5]=0
+#apse_site_name[5]="http://freecode.com"
+#apse_uri[5]="http://freecode.com/projects/"
+#apse_put_fields[5]=""
+#apse_error_msg[5]="404 Not Found"
+#apse_grep[5]="/releases/"
+#apse_sed[5]="s,.*\([^ <]*\).*,\1,pi"
-apse_enabled[7]=1
-apse_site_name[7]="http://distrowatch.gds.tuwien.ac.at"
-apse_uri[7]="http://distrowatch.gds.tuwien.ac.at/packages.php?"
-apse_put_fields[7]=""
-apse_error_msg[7]="is currently being redesigned"
-apse_grep[7]="td.*/\${search_name}[-_][0-9]"
-apse_sed[7]="s,.*td><[^>]*>\([^ <]*\)<.*,\1,pi"
+#apse_enabled[6]=0
+#apse_site_name[6]="http://sourcewell.berlios.de"
+#apse_uri[6]="http://sourcewell.berlios.de/appsearch.php?by=Importance&search="
+#apse_put_fields[6]=""
+#apse_error_msg[6]="No Application found"
+#apse_grep[6]="appbyid.*\${search_name}[^a-zA-Z].*Stable"
+#apse_sed[6]="s,.*\${search_name} \([^ <]*\).*,\1,pi"
-apse_enabled[8]=1
-apse_site_name[8]="http://directory.fsf.org"
-apse_uri[8]="http://directory.fsf.org/wiki/"
-apse_put_fields[8]=""
-apse_error_msg[8]="is currently no text"
-apse_grep[8]=""
-apse_sed[8]="s,^version \([^ ]*\).*,\1,pi"
+#apse_enabled[7]=0
+#apse_site_name[7]="http://distrowatch.gds.tuwien.ac.at"
+#apse_uri[7]="http://distrowatch.gds.tuwien.ac.at/packages.php?"
+#apse_put_fields[7]=""
+#apse_error_msg[7]="is currently being redesigned"
+#apse_grep[7]="td.*/\${search_name}[-_][0-9]"
+#apse_sed[7]="s,.*td><[^>]*>\([^ <]*\)<.*,\1,pi"
-apse_enabled[9]=1
-apse_site_name[9]="http://launchpad.net"
-apse_uri[9]="http://launchpad.net/"
-apse_put_fields[9]=""
-apse_error_msg[9]="page does not exist"
-apse_grep[9]=""
-apse_sed[9]="s,.*Latest version is \([^ ]*\).*,\1,pi"
+#apse_enabled[8]=0
+#apse_site_name[8]="http://directory.fsf.org"
+#apse_uri[8]="http://directory.fsf.org/wiki/"
+#apse_put_fields[8]=""
+#apse_error_msg[8]="is currently no text"
+#apse_grep[8]=""
+#apse_sed[8]="s,^version \([^ ]*\).*,\1,pi"
+
+#apse_enabled[9]=0
+#apse_site_name[9]="http://launchpad.net"
+#apse_uri[9]="http://launchpad.net/"
+#apse_put_fields[9]=""
+#apse_error_msg[9]="page does not exist"
+#apse_grep[9]=""
+#apse_sed[9]="s,.*Latest version is \([^ ]*\).*,\1,pi"
diff --git a/lib/libapse.lib.in b/lib/libapse.lib.in
index e486578..6a53967 100644
--- a/lib/libapse.lib.in
+++ b/lib/libapse.lib.in
@@ -1,7 +1,7 @@
#!/bin/bash
# libapse.lib -- Autospec Package Search Engine library
# Copyright (C) 2007,2012 Stefano Cotta Ramusino
-# Copyright (C) 2008-2011 Silvan Calarco
+# Copyright (C) 2008-2021 Silvan Calarco
[ "$libapse_is_loaded" = 1 ] || {
libapse_is_loaded=1
@@ -497,10 +497,10 @@ sed -n "s,Location: \(.*\)?.*,\1,pi"`
$"looking at"" ${NOTE}(#$i)${NORM} <${NOTE}${apse_site_name[$i]}${NORM}>..."
for search_name in $src_name $specname; do
- [ "${apse_put_fields[$i]}" ] &&
- curr_curl_url="${apse_uri[$i]}" ||
- curr_curl_url="${apse_uri[$i]}${search_name}"
-
+ [ "${apse_put_fields[$i]}" ] && curr_curl_url="${apse_uri[$i]}" || {
+ curr_curl_url="$(echo "${apse_uri[$i]}" | sed -e "s,\${search_name},\L${search_name},g")"
+ [ "${curr_curl_url}" = "${apse_uri[$i]}" ] && curr_curl_url="${apse_uri[$i]}${search_name}"
+ }
if [ "${apse_put_fields[$i]}" ]; then
notify.debug "\
running: curl \$curr_curl_proxy_opts -s -L -d \
@@ -535,6 +535,13 @@ $(echo "${apse_grep[$i]}" | sed -e "s,\${search_name},${search_name},g")"
running: grep -i -m1 \"$current_grep\" \$fcurlout | sed -n \"$current_sed\""
new_version="$(\
grep -i -m1 "$current_grep" $fcurlout | sed -n "$current_sed")"
+ elif [ "${apse_jq[$i]}" ]; then
+ current_jq="\
+$(echo "${apse_jq[$i]}" | sed -e "s,\${search_name},\L${search_name},g")"
+ notify.debug "\
+running: jq \"$current_jq\" \$fcurlout"
+ new_version="$(\
+jq -r "$current_jq" $fcurlout)"
else
notify.debug "\
running: sed -n \"$current_sed\" \$fcurlout"