|
Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
################################################################
#
# File: debreputil
#
# Subject: utilities to manage a repository of .debs
#
# Author: Edrx
#
# Date: 2000jul03
#
################################################################
#
#
#
# Libbables:
#
################################################################
$include "zinc.icn"
$include "~/ICON/debrepository.icn"
# (find-fline "~/ICON/debrepository.icn")
# (find-fline "/hda2/98jul22home/root/ICON/")
# (find-es "apt" "missing_upstream_debs2")
procedure idebs_notin_upstream(args[])
read_installed_debs(args[1])
read_upstream_debs(args[2])
every write(!(sort(ideb_basenameS -- udeb_basenameS)))
end
procedure idebs_as_upstream(args[])
read_installed_debs(args[1])
read_upstream_debs(args[2])
every debname := !(sort(ideb_basenameS ** udeb_basenameS)) do
write(udeb_basename2li[debname])
end
procedure upstream_fdebs_as_cpsrms(args[])
read_upstream_debs(args[1])
udeb_basename2localcopy := table()
every li := tsv_lines(args[2]) do
if member(udeb_basenameS, tsv_head) then
if addtotable(udeb_basename2localcopy, tsv_head, tsv_tail) == "first"
then {
dest := udeb_basename2fname[tsv_head]
write("# Upstream: ", dest)
write("[[ ! -e ", dest, " ]] && ", "\\\n",
"cp ", tsv_tail, " \\\n ", dest)
} else
write(cpsrmsF, "rm -v ", tsv_tail)
else
write("# Not in upstream: ", tsv_tail)
end
procedure upstream_fdebs_as_mvsrms(args[])
read_upstream_debs(args[1])
udeb_basename2localcopy := table()
# write("unalias mv_or_rm")
write("function mv_or_rm () {\n" ||
" if [[ -e $2 ]]; then\n" ||
" if [[ $1 -ef $2 ]]; then\n" ||
" echo '# same as dest:' $1\n" ||
" else echo rm $1; rm $1\n" ||
" fi\n" ||
" else echo mv $1 $2; mv $1 $2\n" ||
" fi\n" ||
"}")
# w(udeb_basename2fname)
every li := tsv_lines(args[2]) do
if member(udeb_basenameS, tsv_head) then {
dest := udeb_basename2fname[tsv_head]
write("mv_or_rm ", tsv_tail, " ", dest)
} else {
write("# Not in upstream: ", tsv_tail)
}
end
procedure main(args)
case args[1] of {
"-idebs_notin_upstream" :
idebs_notin_upstream(args[2], args[3])
"-idebs_as_upstream" :
idebs_as_upstream(args[2], args[3])
"-notin_upstream_fdebs" :
notin_upstream_fdebs(args[2], args[3])
"-upstream_fdebs_as_cpsrms" :
upstream_fdebs_as_cpsrms(args[2], args[3])
"-upstream_fdebs_as_mvsrms" :
upstream_fdebs_as_mvsrms(args[2], args[3])
default :
write("Bad command. See ~/ICON/debreputil.icn")
}
end
# -idebs_as_upstream
# -idebs_notin_upstream
# -notin_upstream_fdebs
# -upstream_notin_fdebs
# -debs_notin_fdebs
# -upstream_fdebs_cpsrms
# (find-es "emacs" "compile-command")
# (compile "cd ~/ICON/; icont debreputil.icn")
#
# Local variables:
# compile-command: "cd ~/ICON/; icont debreputil.icn"
# End: