summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--locale/en_US.sh4
-rw-r--r--src/cmd/local.mk3
-rw-r--r--src/cmd/sign.sh42
3 files changed, 48 insertions, 1 deletions
diff --git a/locale/en_US.sh b/locale/en_US.sh
index bd3af25..d90c3be 100644
--- a/locale/en_US.sh
+++ b/locale/en_US.sh
@@ -80,6 +80,10 @@ msg_pro_archman_cmd_copy_suite_usage='<source-suite> <destination-suite>'
msg_pro_archman_cmd_remove_suite_summary='remove a suite'
msg_pro_archman_cmd_remove_suite_usage='<suite>'
+# src/cmd/sign.sh
+msg_pro_archman_cmd_sign_summary='re-sign all package feed index files'
+msg_pro_archman_cmd_sign_usage=''
+
# src/suite.sh
msg_pro_archman_suite_copying='Copying suite %s/%s to suite %s/%s...'
msg_pro_archman_suite_removing='Removing suite %s/%s...'
diff --git a/src/cmd/local.mk b/src/cmd/local.mk
index 9dd7023..860c117 100644
--- a/src/cmd/local.mk
+++ b/src/cmd/local.mk
@@ -5,4 +5,5 @@ pro_archman_SOURCES += \
%reldir%/process-incoming.sh \
%reldir%/remove.sh \
%reldir%/copy-suite.sh \
- %reldir%/remove-suite.sh
+ %reldir%/remove-suite.sh \
+ %reldir%/sign.sh
diff --git a/src/cmd/sign.sh b/src/cmd/sign.sh
new file mode 100644
index 0000000..3594b58
--- /dev/null
+++ b/src/cmd/sign.sh
@@ -0,0 +1,42 @@
+# pro-archman
+# src/cmd/sign.sh
+# "sign" command
+#
+# Copyright (C) 2019 Patrick McDermott
+#
+# This file is part of the ProteanOS Archive Manager.
+#
+# The ProteanOS Archive Manager 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.
+#
+# The ProteanOS Archive Manager 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 the ProteanOS Archive Manager. If not, see
+# <http://www.gnu.org/licenses/>.
+
+cmd_sign_main()
+{
+ local feed_idx=
+
+ init
+
+ for feed_idx in "${base_dir}/feeds/"*/*/*/*/*/Packages; do
+ feed_sign "${feed_idx}"
+ done
+
+ fini
+
+ return 0
+}
+
+cmd_sign_register()
+{
+ register_cmd 'sign'
+}
+__init cmd_sign_register