From f19dfe65eb634d587c71b4f60fc70c270b9e3621 Mon Sep 17 00:00:00 2001 From: hummypkg Date: Tue, 31 Jan 2017 23:31:19 +0000 Subject: [PATCH] allow removing non-repository packages git-svn-id: file:///root/webif/svn/pkg/webif/trunk@3672 2a923420-c742-0410-a762-8d5b09965624 --- CONTROL/control | 2 +- webif/html/pkg/pkg.jim | 14 ++++++++++++-- webif/lib/pkg.class | 7 ++++++- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/CONTROL/control b/CONTROL/control index 07d73613..833faa96 100644 --- a/CONTROL/control +++ b/CONTROL/control @@ -1,7 +1,7 @@ Package: webif Priority: optional Section: web -Version: 1.4.0-2 +Version: 1.4.0-3 Architecture: mipsel Maintainer: af123@hpkg.tv Depends: tcpfix,webif-channelicons(>=1.1.25),lighttpd(>=1.4.39-1),jim(>=0.77),jim-oo(>=0.77),jim-sqlite3(>=0.76),jim-cgi(>=0.7-1),jim-binary(>=0.76),service-control(>=2.3),busybox(>=1.20.2-1),lsof(>=4.87),epg(>=1.2.5),hmt(>=2.0.10),ssmtp,cron-daemon(>=1.18.3-3),at(>=3.1.18),anacron,trm(>=1.1),openssl-command,nicesplice,id3v2,file,rsvsync(>=1.1.10),webif-charts(>=1.2-1),stripts(>=1.2.5-3),tmenu(>=1.21-2),ffmpeg,id3v2,multienv(>=1.6),tcpping(>=1.1),e2fsprogs,wireless-tools(>=29-1),dbupdate,recmon(>=2.0.7),hwctl,nugget(>=0.95),sqlite3(>=3.15.1) diff --git a/webif/html/pkg/pkg.jim b/webif/html/pkg/pkg.jim index af0cca3a..cfe5d37d 100755 --- a/webif/html/pkg/pkg.jim +++ b/webif/html/pkg/pkg.jim @@ -30,7 +30,11 @@ proc pkgrow {name pkg} { } puts "" - set descr $pkg(description) + if {[dict exists $pkg description]} { + set descr $pkg(description) + } else { + set descr "No longer in package repository." + } set changes "" regexp {(.*) \[(.*)\]} $descr x descr changes if {[dict exists $::pkgmeta $name]} { @@ -79,9 +83,15 @@ proc pkgrow {name pkg} { } set pkgdata [pkg getall] + if {[file exists /mod/var/opkg/beta]} { - set pkgdata [dict merge $pkgdata [pkg getall beta]] + foreach {pkg data} [pkg getall beta] { + if {[dict exists $data description]} { + set pkgdata($pkg) $data + } + } } + pkg loadmeta set type [cgi_get type "avail"] diff --git a/webif/lib/pkg.class b/webif/lib/pkg.class index 4fd01e40..fdd1a147 100755 --- a/webif/lib/pkg.class +++ b/webif/lib/pkg.class @@ -52,8 +52,13 @@ proc {pkg getall} {{repo base}} { if {[catch { set fp [open "/mod/var/opkg/$repo" r] } msg]} { error "Error opening repository, $msg" } - set cur "" + + foreach {p v} $installed { + set pkglist($p) [list installed $v] + } + set pkg {} + set cur "" foreach line [split [$fp read] "\n"] { if {![regexp {^([^:]+): (.*)$} $line x tag val]} { if {[string equal -length 1 $line " "]} {