Commit 04f9885a authored by Vitaly Lipatov's avatar Vitaly Lipatov

separate 'installed' from 'query' command

parent ac420493
......@@ -202,9 +202,12 @@ check_command()
Install) # HELPCMD: perform update package repo info and install package(s) via install command
epm_cmd=Install
;;
-q|q|installed|query) # HELPCMD: check presence of package(s) and print this name (also --short is supported)
-q|q|query) # HELPCMD: check presence of package(s) and print this name (also --short is supported)
epm_cmd=query
;;
installed) # HELPCMD: check presence of package(s) (like -q with --quiet)
epm_cmd=installed
;;
-sf|sf|filesearch) # HELPCMD: search in which package a file is included
epm_cmd=search_file
;;
......
#!/bin/sh
#
# Copyright (C) 2012, 2013, 2015-2017, 2021 Etersoft
# Copyright (C) 2012, 2013, 2015-2017, 2021 Vitaly Lipatov <lav@etersoft.ru>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
load_helper epm-query
# fill pkg_installed and pkg_noninstalled
separate_installed()
{
pkg_installed=
pkg_noninstalled=
for i in "$@" ; do
is_installed $i && pkg_installed="$pkg_installed $i" || pkg_noninstalled="$pkg_noninstalled $i"
done
}
epm_installed()
{
[ -n "$pkg_names" ] || fatal "is_installed: package name is missed"
is_installed "$pkg_names"
}
......@@ -306,23 +306,16 @@ __epm_query_shortname()
docmd $CMD $@
}
# keep here, all modules and epm-query use is_installed from epm-query
# see epm-installed
# check if pkg is installed
is_installed()
{
__epm_query_shortname "$@" >/dev/null 2>/dev/null
# broken way to recursive call here (overhead!)
#epm installed $@ >/dev/null 2>/dev/null
(quiet=1 __epm_query_name "$@") >/dev/null 2>/dev/null
}
# fill pkg_installed and pkg_noninstalled
separate_installed()
{
pkg_installed=
pkg_noninstalled=
for i in "$@" ; do
is_installed $i && pkg_installed="$pkg_installed $i" || pkg_noninstalled="$pkg_noninstalled $i"
done
}
epm_query()
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment