Bug#961411: marked as done (apt search -- output NOT grepable)
Your message dated Sun, 24 May 2020 15:35:31 +0200
with message-id <20200524153110.GA1041191@debian.org>
and subject line Re: Bug#961411: apt search -- output NOT grepable
has caused the Debian Bug report #961411,
regarding apt search -- output NOT grepable
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)
--
961411: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=961411
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: apt
Version: 1.8.2.1
Severity: normal
I've completely switched to using "apt" for all debian package management. I'm
fine with the "apt" tool, it fits all my needs except one... serarching.
For example I look for package to read/write JSON data in perl. In old days I
used the command "apt-cache search" like this:
leszek@len530:~$ apt-cache search perl | egrep JSON | egrep -i data
and the result was simple:
libjson-perl - module for manipulating JSON-formatted data
libjson-xs-perl - module for manipulating JSON-formatted data (C/XS-accelerated)
libcatmandu-importer-getjson-perl - load JSON-encoded data from a server using a GET HTTP request
libjson-pp-perl - module for manipulating JSON-formatted data (Pure Perl)
libjson-validator-perl - module to validate data against a JSON schema
libtest-deep-json-perl - Test::Deep plugin for comparing JSON data
libtest-json-perl - module for testing JSON data
Because "apt search" (not "apt-cache search", just "apt") shows each package on
two lines, then grepping results is not possible.
I've looked at man pages, internet sites to find soultion. Other people have the
same problem.
The soultion is to change "apt search" output:
leszek@len530:~$ apt search perl JSON data
from:
libxml-atom-microformats-perl/focal,focal 0.004-3 all
parse microformats in Atom content
php-json-schema/focal,focal 5.2.9-1 all
implementation of JSON schema
php-services-json/focal,focal 1.0.3-1build1 all
PHP implementaion of json_encode/decode
vim-syntastic/focal,focal 3.10.0-2 all
Syntax checking hacks for vim
to:
libxml-atom-microformats-perl/focal,focal 0.004-3 all parse microformats in Atom content
php-json-schema/focal,focal 5.2.9-1 all implementation of JSON schema
php-services-json/focal,focal 1.0.3-1build1 all PHP implementaion of json_encode/decode
vim-syntastic/focal,focal 3.10.0-2 all Syntax checking hacks for vim
It would make life lot easier.
-- Package-specific info:
-- apt-config dump --
APT "";
APT::Architecture "amd64";
APT::Build-Essential "";
APT::Build-Essential:: "build-essential";
APT::Install-Recommends "false";
APT::Install-Suggests "false";
APT::Sandbox "";
APT::Sandbox::User "_apt";
APT::Authentication "";
APT::Authentication::TrustCDROM "true";
APT::NeverAutoRemove "";
APT::NeverAutoRemove:: "^firmware-linux.*";
APT::NeverAutoRemove:: "^linux-firmware$";
APT::NeverAutoRemove:: "^linux-image-[a-z0-9]*$";
APT::NeverAutoRemove:: "^linux-image-[a-z0-9]*-[a-z0-9]*$";
APT::NeverAutoRemove:: "^linux-image-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^linux-image-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^linux-headers-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^linux-headers-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^linux-image-extra-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^linux-image-extra-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^linux-modules-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^linux-modules-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^linux-modules-extra-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^linux-modules-extra-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^linux-signed-image-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^linux-signed-image-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^linux-image-unsigned-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^linux-image-unsigned-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-image-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-image-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-headers-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^kfreebsd-headers-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^gnumach-image-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^gnumach-image-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^.*-modules-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^.*-modules-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^.*-kernel-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^.*-kernel-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^linux-backports-modules-.*-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^linux-backports-modules-.*-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^linux-modules-.*-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^linux-modules-.*-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^linux-tools-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^linux-tools-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^linux-cloud-tools-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^linux-cloud-tools-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^linux-buildinfo-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^linux-buildinfo-4\.19\.0-9-amd64$";
APT::NeverAutoRemove:: "^linux-source-4\.19\.0-8-amd64$";
APT::NeverAutoRemove:: "^linux-source-4\.19\.0-9-amd64$";
APT::VersionedKernelPackages "";
APT::VersionedKernelPackages:: "linux-image";
APT::VersionedKernelPackages:: "linux-headers";
APT::VersionedKernelPackages:: "linux-image-extra";
APT::VersionedKernelPackages:: "linux-modules";
APT::VersionedKernelPackages:: "linux-modules-extra";
APT::VersionedKernelPackages:: "linux-signed-image";
APT::VersionedKernelPackages:: "linux-image-unsigned";
APT::VersionedKernelPackages:: "kfreebsd-image";
APT::VersionedKernelPackages:: "kfreebsd-headers";
APT::VersionedKernelPackages:: "gnumach-image";
APT::VersionedKernelPackages:: ".*-modules";
APT::VersionedKernelPackages:: ".*-kernel";
APT::VersionedKernelPackages:: "linux-backports-modules-.*";
APT::VersionedKernelPackages:: "linux-modules-.*";
APT::VersionedKernelPackages:: "linux-tools";
APT::VersionedKernelPackages:: "linux-cloud-tools";
APT::VersionedKernelPackages:: "linux-buildinfo";
APT::VersionedKernelPackages:: "linux-source";
APT::Never-MarkAuto-Sections "";
APT::Never-MarkAuto-Sections:: "metapackages";
APT::Never-MarkAuto-Sections:: "contrib/metapackages";
APT::Never-MarkAuto-Sections:: "non-free/metapackages";
APT::Never-MarkAuto-Sections:: "restricted/metapackages";
APT::Never-MarkAuto-Sections:: "universe/metapackages";
APT::Never-MarkAuto-Sections:: "multiverse/metapackages";
APT::Move-Autobit-Sections "";
APT::Move-Autobit-Sections:: "oldlibs";
APT::Move-Autobit-Sections:: "contrib/oldlibs";
APT::Move-Autobit-Sections:: "non-free/oldlibs";
APT::Move-Autobit-Sections:: "restricted/oldlibs";
APT::Move-Autobit-Sections:: "universe/oldlibs";
APT::Move-Autobit-Sections:: "multiverse/oldlibs";
APT::Architectures "";
APT::Architectures:: "amd64";
APT::Compressor "";
APT::Compressor::. "";
APT::Compressor::.::Name ".";
APT::Compressor::.::Extension "";
APT::Compressor::.::Binary "";
APT::Compressor::.::Cost "0";
APT::Compressor::zstd "";
APT::Compressor::zstd::Name "zstd";
APT::Compressor::zstd::Extension ".zst";
APT::Compressor::zstd::Binary "false";
APT::Compressor::zstd::Cost "60";
APT::Compressor::lz4 "";
APT::Compressor::lz4::Name "lz4";
APT::Compressor::lz4::Extension ".lz4";
APT::Compressor::lz4::Binary "false";
APT::Compressor::lz4::Cost "50";
APT::Compressor::gzip "";
APT::Compressor::gzip::Name "gzip";
APT::Compressor::gzip::Extension ".gz";
APT::Compressor::gzip::Binary "gzip";
APT::Compressor::gzip::Cost "100";
APT::Compressor::gzip::CompressArg "";
APT::Compressor::gzip::CompressArg:: "-6n";
APT::Compressor::gzip::UncompressArg "";
APT::Compressor::gzip::UncompressArg:: "-d";
APT::Compressor::xz "";
APT::Compressor::xz::Name "xz";
APT::Compressor::xz::Extension ".xz";
APT::Compressor::xz::Binary "xz";
APT::Compressor::xz::Cost "200";
APT::Compressor::xz::CompressArg "";
APT::Compressor::xz::CompressArg:: "-6";
APT::Compressor::xz::UncompressArg "";
APT::Compressor::xz::UncompressArg:: "-d";
APT::Compressor::bzip2 "";
APT::Compressor::bzip2::Name "bzip2";
APT::Compressor::bzip2::Extension ".bz2";
APT::Compressor::bzip2::Binary "bzip2";
APT::Compressor::bzip2::Cost "300";
APT::Compressor::bzip2::CompressArg "";
APT::Compressor::bzip2::CompressArg:: "-6";
APT::Compressor::bzip2::UncompressArg "";
APT::Compressor::bzip2::UncompressArg:: "-d";
APT::Compressor::lzma "";
APT::Compressor::lzma::Name "lzma";
APT::Compressor::lzma::Extension ".lzma";
APT::Compressor::lzma::Binary "xz";
APT::Compressor::lzma::Cost "400";
APT::Compressor::lzma::CompressArg "";
APT::Compressor::lzma::CompressArg:: "--format=lzma";
APT::Compressor::lzma::CompressArg:: "-6";
APT::Compressor::lzma::UncompressArg "";
APT::Compressor::lzma::UncompressArg:: "--format=lzma";
APT::Compressor::lzma::UncompressArg:: "-d";
Dir "/";
Dir::State "var/lib/apt";
Dir::State::lists "lists/";
Dir::State::cdroms "cdroms.list";
Dir::State::extended_states "extended_states";
Dir::State::status "/var/lib/dpkg/status";
Dir::Cache "var/cache/apt";
Dir::Cache::archives "archives/";
Dir::Cache::srcpkgcache "srcpkgcache.bin";
Dir::Cache::pkgcache "pkgcache.bin";
Dir::Etc "etc/apt";
Dir::Etc::sourcelist "sources.list";
Dir::Etc::sourceparts "sources.list.d";
Dir::Etc::main "apt.conf";
Dir::Etc::netrc "auth.conf";
Dir::Etc::netrcparts "auth.conf.d";
Dir::Etc::parts "apt.conf.d";
Dir::Etc::preferences "preferences";
Dir::Etc::preferencesparts "preferences.d";
Dir::Etc::trusted "trusted.gpg";
Dir::Etc::trustedparts "trusted.gpg.d";
Dir::Bin "";
Dir::Bin::methods "/usr/lib/apt/methods";
Dir::Bin::solvers "";
Dir::Bin::solvers:: "/usr/lib/apt/solvers";
Dir::Bin::planners "";
Dir::Bin::planners:: "/usr/lib/apt/planners";
Dir::Bin::dpkg "/usr/bin/dpkg";
Dir::Bin::gzip "/bin/gzip";
Dir::Bin::bzip2 "/bin/bzip2";
Dir::Bin::xz "/usr/bin/xz";
Dir::Bin::lz4 "/usr/bin/lz4";
Dir::Bin::zstd "/usr/bin/zstd";
Dir::Bin::lzma "/usr/bin/xz";
Dir::Media "";
Dir::Media::MountPath "/media/cdrom";
Dir::Log "var/log/apt";
Dir::Log::Terminal "term.log";
Dir::Log::History "history.log";
Dir::Log::Planner "eipp.log.xz";
Dir::Ignore-Files-Silently "";
Dir::Ignore-Files-Silently:: "~$";
Dir::Ignore-Files-Silently:: "\.disabled$";
Dir::Ignore-Files-Silently:: "\.bak$";
Dir::Ignore-Files-Silently:: "\.dpkg-[a-z]+$";
Dir::Ignore-Files-Silently:: "\.ucf-[a-z]+$";
Dir::Ignore-Files-Silently:: "\.save$";
Dir::Ignore-Files-Silently:: "\.orig$";
Dir::Ignore-Files-Silently:: "\.distUpgrade$";
Acquire "";
Acquire::AllowInsecureRepositories "0";
Acquire::AllowWeakRepositories "0";
Acquire::AllowDowngradeToInsecureRepositories "0";
Acquire::cdrom "";
Acquire::cdrom::mount "/media/cdrom";
Acquire::IndexTargets "";
Acquire::IndexTargets::deb "";
Acquire::IndexTargets::deb::Packages "";
Acquire::IndexTargets::deb::Packages::MetaKey "$(COMPONENT)/binary-$(ARCHITECTURE)/Packages";
Acquire::IndexTargets::deb::Packages::flatMetaKey "Packages";
Acquire::IndexTargets::deb::Packages::ShortDescription "Packages";
Acquire::IndexTargets::deb::Packages::Description "$(RELEASE)/$(COMPONENT) $(ARCHITECTURE) Packages";
Acquire::IndexTargets::deb::Packages::flatDescription "$(RELEASE) Packages";
Acquire::IndexTargets::deb::Packages::Optional "0";
Acquire::IndexTargets::deb::Translations "";
Acquire::IndexTargets::deb::Translations::MetaKey "$(COMPONENT)/i18n/Translation-$(LANGUAGE)";
Acquire::IndexTargets::deb::Translations::flatMetaKey "$(LANGUAGE)";
Acquire::IndexTargets::deb::Translations::ShortDescription "Translation-$(LANGUAGE)";
Acquire::IndexTargets::deb::Translations::Description "$(RELEASE)/$(COMPONENT) Translation-$(LANGUAGE)";
Acquire::IndexTargets::deb::Translations::flatDescription "$(RELEASE) Translation-$(LANGUAGE)";
Acquire::IndexTargets::deb-src "";
Acquire::IndexTargets::deb-src::Sources "";
Acquire::IndexTargets::deb-src::Sources::MetaKey "$(COMPONENT)/source/Sources";
Acquire::IndexTargets::deb-src::Sources::flatMetaKey "Sources";
Acquire::IndexTargets::deb-src::Sources::ShortDescription "Sources";
Acquire::IndexTargets::deb-src::Sources::Description "$(RELEASE)/$(COMPONENT) Sources";
Acquire::IndexTargets::deb-src::Sources::flatDescription "$(RELEASE) Sources";
Acquire::IndexTargets::deb-src::Sources::Optional "0";
Acquire::Changelogs "";
Acquire::Changelogs::URI "";
Acquire::Changelogs::URI::Origin "";
Acquire::Changelogs::URI::Origin::Debian "https://metadata.ftp-master.debian.org/changelogs/@CHANGEPATH@_changelog";
Acquire::Changelogs::URI::Origin::Ubuntu "https://changelogs.ubuntu.com/changelogs/pool/@CHANGEPATH@/changelog";
Acquire::Changelogs::AlwaysOnline "";
Acquire::Changelogs::AlwaysOnline::Origin "";
Acquire::Changelogs::AlwaysOnline::Origin::Ubuntu "1";
Acquire::Languages "";
Acquire::Languages:: "en";
Acquire::Languages:: "none";
Acquire::Languages:: "pl";
Acquire::CompressionTypes "";
Acquire::CompressionTypes::xz "xz";
Acquire::CompressionTypes::bz2 "bzip2";
Acquire::CompressionTypes::lzma "lzma";
Acquire::CompressionTypes::gz "gzip";
Acquire::CompressionTypes::lz4 "lz4";
Acquire::CompressionTypes::zst "zstd";
DPkg "";
DPkg::Path "/usr/sbin:/usr/bin:/sbin:/bin";
DPkg::Pre-Install-Pkgs "";
DPkg::Pre-Install-Pkgs:: "/usr/sbin/dpkg-preconfigure --apt || true";
Binary "apt-config";
Binary::apt "";
Binary::apt::APT "";
Binary::apt::APT::Color "1";
Binary::apt::APT::Cache "";
Binary::apt::APT::Cache::Show "";
Binary::apt::APT::Cache::Show::Version "2";
Binary::apt::APT::Cache::AllVersions "0";
Binary::apt::APT::Cache::ShowVirtuals "1";
Binary::apt::APT::Cache::Search "";
Binary::apt::APT::Cache::Search::Version "2";
Binary::apt::APT::Cache::ShowDependencyType "1";
Binary::apt::APT::Cache::ShowVersion "1";
Binary::apt::APT::Get "";
Binary::apt::APT::Get::Upgrade-Allow-New "1";
Binary::apt::APT::Get::Update "";
Binary::apt::APT::Get::Update::InteractiveReleaseInfoChanges "1";
Binary::apt::APT::Cmd "";
Binary::apt::APT::Cmd::Show-Update-Stats "1";
Binary::apt::APT::Keep-Downloaded-Packages "0";
Binary::apt::DPkg "";
Binary::apt::DPkg::Progress-Fancy "1";
CommandLine "";
CommandLine::AsString "apt-config dump";
-- (no /etc/apt/preferences present) --
-- (no /etc/apt/preferences.d/* present) --
-- /etc/apt/sources.list --
deb http://httpredir.debian.org/debian buster main
deb http://httpredir.debian.org/debian buster-updates main
deb http://security.debian.org buster/updates main
-- (no /etc/apt/sources.list.d/* present) --
-- System Information:
Debian Release: 10.4
APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 4.19.0-9-amd64 (SMP w/4 CPU cores)
Locale: LANG=pl_PL.UTF-8, LC_CTYPE=pl_PL.UTF-8 (charmap=UTF-8), LANGUAGE=pl_PL.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages apt depends on:
ii adduser 3.118
ii debian-archive-keyring 2019.1
ii gpgv 2.2.12-1+deb10u1
ii libapt-pkg5.0 1.8.2.1
ii libc6 2.28-10
ii libgcc1 1:8.3.0-6
ii libgnutls30 3.6.7-4+deb10u3
ii libseccomp2 2.3.3-4
ii libstdc++6 8.3.0-6
Versions of packages apt recommends:
ii ca-certificates 20190110
Versions of packages apt suggests:
pn apt-doc <none>
pn aptitude | synaptic | wajig <none>
pn dpkg-dev <none>
ii gnupg 2.2.12-1+deb10u1
pn powermgmt-base <none>
-- no debconf information
--- End Message ---
--- Begin Message ---
On Sun, May 24, 2020 at 11:54:42AM +0200, Leszek Dubiel wrote:
> Package: apt
> Version: 1.8.2.1
> Severity: normal
>
> I've completely switched to using "apt" for all debian package management. I'm
> fine with the "apt" tool, it fits all my needs except one... serarching.
>
> For example I look for package to read/write JSON data in perl. In old days I
> used the command "apt-cache search" like this:
>
> leszek@len530:~$ apt-cache search perl | egrep JSON | egrep -i data
>
> and the result was simple:
>
> libjson-perl - module for manipulating JSON-formatted data
> libjson-xs-perl - module for manipulating JSON-formatted data (C/XS-accelerated)
> libcatmandu-importer-getjson-perl - load JSON-encoded data from a server using a GET HTTP request
> libjson-pp-perl - module for manipulating JSON-formatted data (Pure Perl)
> libjson-validator-perl - module to validate data against a JSON schema
> libtest-deep-json-perl - Test::Deep plugin for comparing JSON data
> libtest-json-perl - module for testing JSON data
>
>
> Because "apt search" (not "apt-cache search", just "apt") shows each package on
> two lines, then grepping results is not possible.
>
> I've looked at man pages, internet sites to find soultion. Other people have the
> same problem.
>
> The soultion is to change "apt search" output:
>
> leszek@len530:~$ apt search perl JSON data
>
> from:
>
> libxml-atom-microformats-perl/focal,focal 0.004-3 all
> parse microformats in Atom content
>
> php-json-schema/focal,focal 5.2.9-1 all
> implementation of JSON schema
>
> php-services-json/focal,focal 1.0.3-1build1 all
> PHP implementaion of json_encode/decode
>
> vim-syntastic/focal,focal 3.10.0-2 all
> Syntax checking hacks for vim
>
> to:
>
> libxml-atom-microformats-perl/focal,focal 0.004-3 all parse microformats in Atom content
> php-json-schema/focal,focal 5.2.9-1 all implementation of JSON schema
> php-services-json/focal,focal 1.0.3-1build1 all PHP implementaion of json_encode/decode
> vim-syntastic/focal,focal 3.10.0-2 all Syntax checking hacks for vim
>
> It would make life lot easier.
It's a feature, not a bug. It's significantly easier to read. Future versions
of apt search will also
* pipe output through a pager, so just search in there
* support searching via patterns, so just search that way (see apt-patterns manpage,
plus there'll be ?description pattern)
As to scriptable interfaces - we're still working on how to make apt usable
in scripts while maintaining our ability to break the behavior and output
formats. There will probably be some sort of compat levels and/or output
format specifiers at a future point, at which point apt will be useful
in scripts.
--
debian developer - deb.li/jak | jak-linux.org - free software dev
ubuntu core developer i speak de, en
--- End Message ---
Reply to: