From 8eda2b1779a788247a7a92141d477ee51d7e0ae3 Mon Sep 17 00:00:00 2001 From: "B. Watson" Date: Sat, 19 Sep 2026 21:01:14 -0400 Subject: find_installed_removed: added. --- Makefile | 2 +- NEWS | 2 ++ find_installed_removed | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 60 insertions(+), 1 deletion(-) create mode 100755 find_installed_removed diff --git a/Makefile b/Makefile index 8cf315e..dc822e9 100644 --- a/Makefile +++ b/Makefile @@ -14,7 +14,7 @@ MAN1DIR=$(MANDIR)/man1 DOCDIR=$(PREFIX)/doc/$(PROJ)-$(VERSION) DOCS=README QUICKSTART TODO pre-commit-sbolint NEWS CREDITS -SCRIPTS=sbopkglint sbolint sbofixinfo sbodl explodepkg.sbopkglint find_installed_orphans +SCRIPTS=sbopkglint sbolint sbofixinfo sbodl explodepkg.sbopkglint find_installed_orphans find_installed_removed all: @echo "Use 'make install PREFIX=' to install $(PROJ)." diff --git a/NEWS b/NEWS index ce1ca20..331f598 100644 --- a/NEWS +++ b/NEWS @@ -4,6 +4,8 @@ user-visible changes between releases. New in 0.9.9: ============= +New tools added: find_installed_orphans and find_installed_removed. + sbolint: - Having multiple *.SlackBuild files is now an error. - doinst.sh should not use chmod. This is a note rather than diff --git a/find_installed_removed b/find_installed_removed new file mode 100755 index 0000000..ad088cc --- /dev/null +++ b/find_installed_removed @@ -0,0 +1,57 @@ +#!/usr/bin/perl -w + +($SELF = $0) =~ s,.*/,,; +if(@ARGV) { + print <) { + my $r = reverse; + my @a = split /-/, $r, 4; + my $pkg = reverse $a[3]; + $installed{$pkg}++; +} + +open my $pipe, "wget -qO- $URL | gzip -dc |" or die $!; +while(<$pipe>) { + chomp; + next unless m{^SLACKBUILD NAME: (.*)$}; + $in_repo{$1}++; +} +close $pipe; + +$count = 0; +for(sort keys %installed) { + $count++, print "$_\n" unless $in_repo{$_}; +} + +exit ($count != 0); -- cgit v1.2.3