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]="

\${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[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"