summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorP. J. McDermott <pjm@nac.net>2013-07-27 15:57:53 (EDT)
committer P. J. McDermott <pjm@nac.net>2013-07-27 16:00:00 (EDT)
commit775241ce65ac7373f821f28123b73af1709c920c (patch)
tree4a0687e3f3f295192ef3e808b4579ed18f4a75ac
parent4d7467f8db2e03f4a8962647855995f76986bb4c (diff)
remove: Implement.
-rw-r--r--lib/cmd/local.mk3
-rw-r--r--lib/cmd/remove.sh41
-rw-r--r--locale/en_US/pro_archman.sh5
3 files changed, 48 insertions, 1 deletions
diff --git a/lib/cmd/local.mk b/lib/cmd/local.mk
index e671610..9de7010 100644
--- a/lib/cmd/local.mk
+++ b/lib/cmd/local.mk
@@ -5,4 +5,5 @@ pkglibcmd_srcs = \
lib/cmd/help.sh \
lib/cmd/include.sh \
lib/cmd/generate-index.sh \
- lib/cmd/process-incoming.sh
+ lib/cmd/process-incoming.sh \
+ lib/cmd/remove.sh
diff --git a/lib/cmd/remove.sh b/lib/cmd/remove.sh
new file mode 100644
index 0000000..614fab4
--- /dev/null
+++ b/lib/cmd/remove.sh
@@ -0,0 +1,41 @@
+# pro-archman
+# lib/cmd/remove.sh
+# "remove" command
+#
+# Copyright (C) 2013 Patrick "P. J." McDermott
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU 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 General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+use locale
+use output
+use remove
+
+cmd_remove_main()
+{
+ local suite="${1}"
+ local source="${2}"
+ local chan=
+ local dist=
+
+ chan="${suite%/*}"
+ dist="${suite##*/}"
+ if [ "x${chan}" = "x${suite}" ]; then
+ chan="${conf_incoming_channel}"
+ fi
+
+ info "$(get_msg 'cmd_remove_removing')" "${source}" "${chan}" "${dist}"
+ remove_source_from_suite "${chan}" "${dist}" "${source}"
+
+ return 0
+}
diff --git a/locale/en_US/pro_archman.sh b/locale/en_US/pro_archman.sh
index 6978791..193abb5 100644
--- a/locale/en_US/pro_archman.sh
+++ b/locale/en_US/pro_archman.sh
@@ -42,6 +42,11 @@ msg_pro_archman_cmd_process_incoming_summary='include packages in incoming'
msg_pro_archman_cmd_process_incoming_usage=''
msg_pro_archman_cmd_process_incoming_processing='Processing changes in incoming...'
+# lib/cmd/remove.sh
+msg_pro_archman_cmd_remove_summary='remove packages from a suite'
+msg_pro_archman_cmd_remove_usage='<suite> <source>'
+msg_pro_archman_cmd_remove_removing='Removing %s from %s/%s...'
+
# lib/control.sh
msg_pro_archman_control_empty_line='empty line'
msg_pro_archman_control_bad_nv='badly formatted control field'