schleuder 2.2.4 → 3.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (141) hide show
  1. checksums.yaml +5 -5
  2. data/README.md +138 -0
  3. data/Rakefile +136 -0
  4. data/bin/pinentry-clearpassphrase +72 -0
  5. data/bin/schleuder +9 -89
  6. data/bin/schleuder-api-daemon +4 -0
  7. data/db/migrate/20140501103532_create_lists.rb +39 -0
  8. data/db/migrate/20140501112859_create_subscriptions.rb +21 -0
  9. data/db/migrate/201508092100_add_language_to_lists.rb +11 -0
  10. data/db/migrate/20150812165700_change_keywords_admin_only_defaults.rb +8 -0
  11. data/db/migrate/20150813235800_add_forward_all_incoming_to_admins.rb +11 -0
  12. data/db/migrate/201508141727_change_send_encrypted_only_default.rb +8 -0
  13. data/db/migrate/201508222143_add_logfiles_to_keep_to_lists.rb +11 -0
  14. data/db/migrate/201508261723_rename_delivery_disabled_to_delivery_enabled_and_change_default.rb +14 -0
  15. data/db/migrate/201508261815_strip_gpg_passphrase.rb +11 -0
  16. data/db/migrate/201508261827_remove_default_mime.rb +9 -0
  17. data/db/migrate/20160501172700_fix_headers_to_meta_defaults.rb +8 -0
  18. data/db/migrate/20170713215059_add_internal_footer_to_list.rb +11 -0
  19. data/db/schema.rb +62 -0
  20. data/etc/init.d/schleuder-api-daemon +87 -0
  21. data/etc/list-defaults.yml +123 -0
  22. data/etc/postfix/schleuder_sqlite.cf +28 -0
  23. data/etc/schleuder-api-daemon.service +10 -0
  24. data/etc/schleuder.cron.weekly +6 -0
  25. data/etc/schleuder.yml +61 -0
  26. data/lib/schleuder-api-daemon.rb +420 -0
  27. data/lib/schleuder.rb +81 -47
  28. data/lib/schleuder/cli.rb +334 -0
  29. data/lib/schleuder/cli/cert.rb +24 -0
  30. data/lib/schleuder/cli/schleuder_cert_manager.rb +84 -0
  31. data/lib/schleuder/cli/subcommand_fix.rb +11 -0
  32. data/lib/schleuder/conf.rb +131 -0
  33. data/lib/schleuder/errors/active_model_error.rb +15 -0
  34. data/lib/schleuder/errors/base.rb +17 -0
  35. data/lib/schleuder/errors/decryption_failed.rb +16 -0
  36. data/lib/schleuder/errors/fatal_error.rb +13 -0
  37. data/lib/schleuder/errors/file_not_found.rb +14 -0
  38. data/lib/schleuder/errors/invalid_listname.rb +13 -0
  39. data/lib/schleuder/errors/key_adduid_failed.rb +13 -0
  40. data/lib/schleuder/errors/key_generation_failed.rb +16 -0
  41. data/lib/schleuder/errors/keyword_admin_only.rb +13 -0
  42. data/lib/schleuder/errors/list_exists.rb +13 -0
  43. data/lib/schleuder/errors/list_not_found.rb +14 -0
  44. data/lib/schleuder/errors/list_property_missing.rb +14 -0
  45. data/lib/schleuder/errors/listdir_problem.rb +16 -0
  46. data/lib/schleuder/errors/loading_list_settings_failed.rb +14 -0
  47. data/lib/schleuder/errors/message_empty.rb +14 -0
  48. data/lib/schleuder/errors/message_not_from_admin.rb +13 -0
  49. data/lib/schleuder/errors/message_sender_not_subscribed.rb +13 -0
  50. data/lib/schleuder/errors/message_too_big.rb +14 -0
  51. data/lib/schleuder/errors/message_unauthenticated.rb +13 -0
  52. data/lib/schleuder/errors/message_unencrypted.rb +13 -0
  53. data/lib/schleuder/errors/message_unsigned.rb +13 -0
  54. data/lib/schleuder/errors/standard_error.rb +5 -0
  55. data/lib/schleuder/errors/too_many_keys.rb +17 -0
  56. data/lib/schleuder/errors/unknown_list_option.rb +14 -0
  57. data/lib/schleuder/filters/auth_filter.rb +39 -0
  58. data/lib/schleuder/filters/bounces_filter.rb +12 -0
  59. data/lib/schleuder/filters/forward_filter.rb +17 -0
  60. data/lib/schleuder/filters/forward_incoming.rb +13 -0
  61. data/lib/schleuder/filters/hotmail_message_filter.rb +25 -0
  62. data/lib/schleuder/filters/max_message_size.rb +14 -0
  63. data/lib/schleuder/filters/request_filter.rb +26 -0
  64. data/lib/schleuder/filters/send_key_filter.rb +20 -0
  65. data/lib/schleuder/filters/strip_alternative_filter.rb +21 -0
  66. data/lib/schleuder/filters_runner.rb +83 -0
  67. data/lib/schleuder/gpgme/ctx.rb +274 -0
  68. data/lib/schleuder/gpgme/import_status.rb +27 -0
  69. data/lib/schleuder/gpgme/key.rb +212 -0
  70. data/lib/schleuder/gpgme/sub_key.rb +13 -0
  71. data/lib/schleuder/gpgme/user_id.rb +22 -0
  72. data/lib/schleuder/list.rb +318 -127
  73. data/lib/schleuder/list_builder.rb +139 -0
  74. data/lib/schleuder/listlogger.rb +31 -0
  75. data/lib/schleuder/logger.rb +23 -0
  76. data/lib/schleuder/logger_notifications.rb +69 -0
  77. data/lib/schleuder/mail/message.rb +482 -0
  78. data/lib/schleuder/mail/parts_list.rb +9 -0
  79. data/lib/schleuder/plugin_runners/base.rb +91 -0
  80. data/lib/schleuder/plugin_runners/list_plugins_runner.rb +24 -0
  81. data/lib/schleuder/plugin_runners/request_plugins_runner.rb +27 -0
  82. data/lib/schleuder/plugins/attach_listkey.rb +17 -0
  83. data/lib/schleuder/plugins/get_version.rb +7 -0
  84. data/lib/schleuder/plugins/key_management.rb +113 -0
  85. data/lib/schleuder/plugins/list_management.rb +15 -0
  86. data/lib/schleuder/plugins/resend.rb +196 -0
  87. data/lib/schleuder/plugins/sign_this.rb +46 -0
  88. data/lib/schleuder/plugins/subscription_management.rb +140 -0
  89. data/lib/schleuder/runner.rb +130 -0
  90. data/lib/schleuder/subscription.rb +98 -0
  91. data/lib/schleuder/validators/boolean_validator.rb +7 -0
  92. data/lib/schleuder/validators/email_validator.rb +7 -0
  93. data/lib/schleuder/validators/fingerprint_validator.rb +7 -0
  94. data/lib/schleuder/validators/greater_than_zero_validator.rb +7 -0
  95. data/lib/schleuder/validators/no_line_breaks_validator.rb +7 -0
  96. data/lib/schleuder/version.rb +1 -1
  97. data/locales/de.yml +179 -0
  98. data/locales/en.yml +179 -0
  99. metadata +305 -108
  100. checksums.yaml.gz.sig +0 -3
  101. data.tar.gz.sig +0 -2
  102. data/LICENSE +0 -339
  103. data/README +0 -32
  104. data/bin/schleuder-fix-gem-dependencies +0 -37
  105. data/bin/schleuder-init-setup +0 -37
  106. data/bin/schleuder-migrate-v2.1-to-v2.2 +0 -225
  107. data/bin/schleuder-newlist +0 -413
  108. data/contrib/check-expired-keys.rb +0 -60
  109. data/contrib/mutt-schleuder-colors.rc +0 -10
  110. data/contrib/mutt-schleuder-resend.vim +0 -24
  111. data/contrib/smtpserver.rb +0 -76
  112. data/ext/default-list.conf +0 -149
  113. data/ext/default-members.conf +0 -7
  114. data/ext/list.conf.example +0 -14
  115. data/ext/schleuder.conf +0 -64
  116. data/lib/schleuder/archiver.rb +0 -46
  117. data/lib/schleuder/crypt.rb +0 -210
  118. data/lib/schleuder/errors.rb +0 -5
  119. data/lib/schleuder/list_config.rb +0 -146
  120. data/lib/schleuder/log/listlogger.rb +0 -57
  121. data/lib/schleuder/log/outputter/emailoutputter.rb +0 -120
  122. data/lib/schleuder/log/outputter/metaemailoutputter.rb +0 -50
  123. data/lib/schleuder/log/schleuderlogger.rb +0 -34
  124. data/lib/schleuder/mail.rb +0 -873
  125. data/lib/schleuder/mailer.rb +0 -26
  126. data/lib/schleuder/member.rb +0 -69
  127. data/lib/schleuder/plugin.rb +0 -54
  128. data/lib/schleuder/processor.rb +0 -363
  129. data/lib/schleuder/schleuder_config.rb +0 -75
  130. data/lib/schleuder/storage.rb +0 -84
  131. data/lib/schleuder/utils.rb +0 -80
  132. data/man/schleuder-newlist.8 +0 -174
  133. data/man/schleuder.8 +0 -416
  134. data/plugins/README +0 -20
  135. data/plugins/manage_keys_plugin.rb +0 -113
  136. data/plugins/manage_members_plugin.rb +0 -156
  137. data/plugins/manage_self_plugin.rb +0 -26
  138. data/plugins/resend_plugin.rb +0 -35
  139. data/plugins/sign_this_plugin.rb +0 -14
  140. data/plugins/version_plugin.rb +0 -12
  141. metadata.gz.sig +0 -0
@@ -0,0 +1,7 @@
1
+ class NoLineBreaksValidator < ActiveModel::EachValidator
2
+ def validate_each(record, attribute, value)
3
+ if value.to_s.include?("\n")
4
+ record.errors.add(attribute, I18n.t("errors.no_linebreaks") )
5
+ end
6
+ end
7
+ end
@@ -1,3 +1,3 @@
1
1
  module Schleuder
2
- VERSION = '2.2.4'
2
+ VERSION = '3.2.2'
3
3
  end
@@ -0,0 +1,179 @@
1
+ de:
2
+ errors:
3
+ attributes:
4
+ language:
5
+ inclusion: "muss einem der folgenden Werte entsprechen: en, de"
6
+ log_level:
7
+ inclusion: "muss einem der folgenden Werte entsprechen: debug, info, warn, error"
8
+ openpgp_header_preference:
9
+ inclusion: "muss einem der folgenden Werte entsprechen: sign, encrypt, signencrypt, unprotected, none"
10
+ internal_footer:
11
+ invalid: "enthält nicht druckbare Zeichen"
12
+ public_footer:
13
+ invalid: "enthält nicht druckbare Zeichen"
14
+ invalid_email: "ist keine valide E-Mail-Adresse"
15
+ invalid_fingerprint: "ist kein valider OpenPGP-Fingerabdruck"
16
+ list_fingerprint_missing: "Fingerabdruck der Liste ist nicht gesetzt, kann nicht arbeiten! (In `%{listdir}`.)"
17
+ list_key_missing: "Schlüssel der Liste nicht im Schlüsselring gefunden, kann nicht arbeiten! (In `%{listdir}`.)"
18
+ list_secret_key_missing: "Geheimer Schlüssel der Liste nicht im Schlüsselring gefunden, kann nicht arbeiten! (In `%{listdir}`.)"
19
+ list_admins_missing: "List hat keine Admins konfiguriert, kann nicht arbeiten! (In `%{listdir}`.)"
20
+ fatalerror: |
21
+ Es ist ein schwerwiegender Fehler aufgetreten. Administratoren wurden benachrichtigt.
22
+ Bitte versuche es später noch ein Mal.
23
+ signoff: |
24
+
25
+
26
+ Freundliche Grüße,
27
+ Dein Schleuder-System.
28
+ decryption_failed: |
29
+ Deine Email konnnte nicht entschlüsselt werden.
30
+ Emails an diese Adresse müssen mit diesem Schlüssel verschlüsselt werden:
31
+
32
+ %{key}
33
+
34
+ Um den Schlüssel zugesandt zu bekommen sende eine Email an
35
+ <%{sendkey_email}>.
36
+ message_unsigned: Emails an diese Adresse müssen mit einem OpenPGP-Schlüssel signiert sein.
37
+ message_signature_unknown: |
38
+ Emails an diese Adresse müssen mit dem OpenPGP-Schlüssel signiert sein, der für
39
+ dein Abo eingetragen ist. Wenn du nicht weisst, welcher Schlüssel das ist, frage
40
+ die Administrator/innen. Die erreichst du per Email an
41
+ <%{owner_email}>.
42
+ (Vorzugsweise verschlüssele die Email mit dem Schlüssel dieser Adresse:
43
+ %{list_fingerprint}).
44
+ message_unencrypted: Emails an diese Adresse müssen OpenPGP-konform verschlüsselt sein.
45
+ message_unauthenticated: Emails an diese Adresse müssen verschlüsselt und mit einem OpenPGP-Schlüssel signiert sein, der für ein Abo eingetragen ist.
46
+ message_sender_not_subscribed: Nur Absender mit Abo dürfen Emails an diese Adresse schicken.
47
+ message_not_from_admin: Nur Admins dürfen Emails an diese Adresse schicken.
48
+ message_empty: |
49
+ Deine Email enthielt keinen Text, daher wurde sie nicht über die Liste verteilt.
50
+
51
+ Falls du ausschließlich Schlüsselwörter gesendet hast beachte, dass administrative Schlüsselwörter an die "request"-Adresse (<%{request_address}>) geschickt werden müssen um berücksichtigt zu werden.
52
+ list_not_found: "Fehler: Keine Liste zu dieser Adresse gefunden: '%{email}'."
53
+ no_linebreaks: "Darf keine Zeilenumbrüche enthalten"
54
+ invalid_characters: "enthält ungültige Zeichen"
55
+ invalid_listname: "Fehler: '%{email}' ist kein gültige Listen-Adresse."
56
+ list_exists: Es existiert bereits eine Liste mit der Adresse '%{email}'.
57
+ listdir_problem:
58
+ message: "Problem mit dem Listen-Verzeichnis: '%{dir}' %{problem}."
59
+ not_existing: existiert nicht
60
+ not_a_directory: ist kein Verzeichnis
61
+ not_empty: ist nicht leer
62
+ not_writable: ist nicht beschreibbar
63
+ not_readable: ist nicht lesbar
64
+ keyword_admin_only: Das Schlüsselwort '%{keyword}' darf nur von Listen-Admins verwendet werden.
65
+ key_generation_failed: Das Erzeugen des OpenPGP-Schlüsselpaares für %{listname} ist aus unbekannten Gründen fehlgeschlagen. Bitte prüfe das Listen-Verzeichnis ('%{listdir}') und die Log-Dateien.
66
+ key_adduid_failed: "Das Hinzufügen einer User-ID zum OpenPGP-Schlüssel ist mit folgender Meldung fehlgeschlagen:\n%{errmsg}"
67
+ too_many_keys: "Fehler: In %{listdir} existieren mehrere OpenPGP-Schlüssel für %{listname}. Bitte lösche alle bis auf einen."
68
+ unknown_list_option: "Unbekannte Option in %{config_file}: '%{option}'."
69
+ loading_list_settings_failed: "%{config_file} konnte nicht eingelesen werden, bitte Formatierung auf gültiges YAML prüfen."
70
+ message_too_big: "Deine Email war zu groß. Erlaubt sind für diese Liste %{allowed_size}KB."
71
+ must_be_boolean: "muss true oder false sein"
72
+ must_be_greater_than_zero: "muss größer als null sein"
73
+ file_not_found: "Die Datei existiert nicht: '%{file}'."
74
+ not_pgp_mime: "Deine Email war nicht im pgp/mime-Format verschlüsselt."
75
+ delivery_error: "Beim Versenden einer Email an %{email} ist der folgende Fehler aufgetreten: %{error}"
76
+ no_match_for: "Keine Treffer für %{input}"
77
+ too_many_matching_keys: |
78
+ Zu viele Schlüssel gefunden für '%{input}':
79
+ %{key_strings}
80
+ plugins:
81
+ unknown_keyword: Unbekanntes Schlüsselwort '%{keyword}'.
82
+ plugin_failed: Das Schlüsselwort '%{keyword}' verursachte einen unbekannten Fehler. Die System-Administratoren wurden benachrichtigt.
83
+ keyword_admin_notify_request: "%{signer} schickte das Schlüsselwort '%{keyword}' mit den Werten '%{arguments}' und erhielt dies als Antwort:"
84
+ keyword_admin_notify_request_without_arguments: "%{signer} schickte das Schlüsselwort '%{keyword}' und erhielt dies als Antwort:"
85
+ keyword_admin_notify_lists: "%{signer} benutzte das Schlüsselwort '%{keyword}' mit den Werten '%{arguments}' in einer Email an die Liste."
86
+ keyword_admin_notify_lists_without_arguments: "%{signer} benutzte das Schlüsselwort '%{keyword}' in einer Email an die Liste."
87
+ key_management:
88
+ deleted: "Gelöscht: %{key_string}"
89
+ not_deletable: "Darf nicht gelöscht werden: %{key_string}"
90
+ import_result: "Import-Ergebnis:\n"
91
+ key_import_status:
92
+ imported: importiert
93
+ updated: aktualisiert
94
+ unchanged: unverändert
95
+ matching_keys_intro: Alle Schlüssel aus dem Schlüsselring der Liste, die '%{input}' enthalten, sind an diese Email angehängt.
96
+ resend:
97
+ not_resent_no_keys: Resending an <%{email}> fehlgeschlagen (%{num_keys} Schlüssel gefunden und unverschlüsseltes Senden verboten).
98
+ encrypted_to: Verschlüsselt an
99
+ unencrypted_to: Unverschlüsselt an
100
+ invalid_recipient: "Ungültige Emailadresse für resend: %{address}"
101
+ subscription_management:
102
+ forbidden: "Fehler: Du bist nicht berechtigt, das Abo für %{email} zu löschen."
103
+ is_not_subscribed: Kein Abo für %{email} gefunden.
104
+ unsubscribed: Abo für %{email} wurde gelöscht.
105
+ unsubscribing_failed: |
106
+ Abo für %{email} nicht gelöscht:
107
+ %{errors}
108
+ subscribed: |
109
+ Abo für %{email} mit diesen Werten eingetragen:
110
+
111
+ Fingerabdruck: %{fingerprint}
112
+ Admin? %{admin}
113
+ Email-Zustellung aktiv? %{delivery_enabled}
114
+ subscribing_failed: |
115
+ Abo für %{email} nicht eingetragen:
116
+
117
+ %{errors}.
118
+ list_of_subscriptions: "Abos:\n"
119
+ set_fingerprint_only_self: Nur admins dürfen den Fingerabdruck für andere Abos festlegen.
120
+ fingerprint_set: Fingerabdruck für %{email} auf %{fingerprint} gesetzt.
121
+ setting_fingerprint_failed: |
122
+ Fingerabdruck für %{email} konnte nicht auf %{fingerprint} gesetzt werden:
123
+ %{errors}.
124
+ signatures_attached: Die Signaturen hängen an.
125
+ list_management:
126
+ no_logfile: Keine Log-Datei für %{listname} gefunden. (Das kann an einem hohem Log-Level und der Abwesenheit von Fehlern liegen.)
127
+ logfile_attached: Die Log-Datei für %{listname} hängt an.
128
+ list_public_key_subject: Schlüssel dieser Adresse
129
+ list_public_key_attached: Der Schlüssel zu dieser Adresse hängt an.
130
+ no_output_result: Deine Email ergab keinen Ausgabe-Text.
131
+ owner_forward_prefix: Die folgende Email ging für die Listen-Besitzer/innen ein.
132
+ no_keywords_error: Deine Email enthielt keine Schlüsselwörter, daher gab es nichts zu tun.
133
+ missing_listname_keyword_error: Deine Email enthielt nicht das notwendige Schlüsselwort "X-LIST-NAME", daher wurde sie zurückgewiesen.
134
+ wrong_listname_keyword_error: Deine Email enthielt ein falsches "X-LIST-NAME"-Schlüsselwort. Der Wert dieses Schlüsselworts muss der Emailadresse dieser Liste gleichen.
135
+ bounces_drop_all: Die angehängte Email hätte zurückgewiesen (bounced) werden sollen, wurde aber stillschweigend fallen gelassen, weil die Konfiguration dieser Liste definiert, dass für diese Liste nie Email zurückgewiesen werden soll.
136
+ bounces_drop_on_headers: "Die angehängte Email hätte zurückgewiesen (bounce) werden sollen, wurde aber stillschweigend fallen gelassen, weil diese Kopfzeile gefunden wurde: %{key}: %{value}"
137
+ bounces_notify_admins: "Die angehängte Email wurde mit folgender Nachricht zurückgewiesen:"
138
+ notice: Hinweis
139
+ incoming_message: Eingehende Email
140
+ forward_all_incoming_to_admins: Die angehängte Email ging ein.
141
+ forward_automated_message_to_admins: Die angehängte Email wurde vermutlich von einer Maschine und nicht von einem Menschen versendet. Daher ist sie nicht über die Liste verteilt sondern an euch Admins weitergeleitet worden.
142
+ automated_message_subject: Automatische Nachricht empfangen
143
+ check_keys: Schlüsselprüfung
144
+ check_keys_intro: "Bitte kümmere dich um die folgenden Schlüssel für Liste %{email}."
145
+ key_expires: |
146
+ Dieser Schlüssel läuft in %{days} Tagen ab:
147
+ %{key_oneline}
148
+ key_unusable: |
149
+ Dieser Schlüssel ist %{usability_issue}:
150
+ %{key_oneline}
151
+ missed_message_due_to_unusable_key: "Du hast eine Email von %{list_email} verpasst weil mit deinem Abo kein (benutzbarer) OpenPGP-Schlüssel verknüpft ist. Bitte kümmere dich darum."
152
+ refresh_keys: Schlüsselaktualisierung
153
+ refresh_keys_intro: "Die Aktualisierung aller Schlüssel des Schlüsselrings für Liste %{email} ergab dies:"
154
+ pin_keys: Schlüsselpinning
155
+ pin_keys_intro: "Die Überprüfung aller Abos der Liste %{email} ergab, dass wir für folgende Abos einen Schlüssel zur Verwendung festgelegt haben:"
156
+ key_updated: |
157
+ Dieser Schlüssel wurde aktualisiert (%{states}):
158
+ %{key_oneline}
159
+ key_fetched: |
160
+ Dieser Schlüssel wurde geholt (%{states}):
161
+ %{key_oneline}
162
+ import_states:
163
+ unchanged: unverändert
164
+ new_key: neuer Schlüssel
165
+ new_uids: neue User-IDs
166
+ new_subkeys: neue Unterschlüssel
167
+ new_signatures: neue Signaturen
168
+ fetch_key:
169
+ invalid_input: "Ungültige Angabe. Gültig sind: URLs, OpenPGP-Fingerabdrücke, oder Emailadressen."
170
+ pseudoheaders:
171
+ stripped_html_from_multialt: Diese Email enthielt einen alternativen HTML-Teil, der PGP-Daten beinhaltete. Der HTML-Teil wurde entfernt, um die Email sauberer analysieren zu können.
172
+
173
+ activerecord:
174
+ errors:
175
+ models:
176
+ schleuder/subscription:
177
+ attributes:
178
+ email:
179
+ taken: 'ist schon eingetragen'
@@ -0,0 +1,179 @@
1
+ en:
2
+ errors:
3
+ attributes:
4
+ language:
5
+ inclusion: "must be one of: en, de"
6
+ log_level:
7
+ inclusion: "must be one of: debug, info, warn, error"
8
+ openpgp_header_preference:
9
+ inclusion: "must be one of: sign, encrypt, signencrypt, unprotected, none"
10
+ internal_footer:
11
+ invalid: "includes non-printable characters"
12
+ public_footer:
13
+ invalid: "includes non-printable characters"
14
+ invalid_email: "is not a valid email address"
15
+ invalid_fingerprint: "is not a valid OpenPGP-fingerprint"
16
+ list_fingerprint_missing: "List has no fingerprint configured, cannot run! (In `%{listdir}`.)"
17
+ list_key_missing: "List-key is missing in keyring, cannot run! (In `%{listdir}`.)"
18
+ list_secret_key_missing: "Secret key of list is missing in keyring, cannot run! (In `%{listdir}`.)"
19
+ list_admins_missing: "List has no admins configured, cannot run! (In `%{listdir}`.)"
20
+ fatalerror: |
21
+ A fatal error happened. Administrators have been notified.
22
+ Please try again later.
23
+ signoff: |
24
+
25
+
26
+ Kind regards,
27
+ Your Schleuder system.
28
+ decryption_failed: |
29
+ Decrypting your message failed.
30
+ Messages to this address must be encrypted with the following key:
31
+
32
+ %{key}
33
+
34
+ To receive it send an email to
35
+ <%{email}>.
36
+ message_unsigned: Messages to this address must be OpenPGP-signed.
37
+ message_signature_unknown: |
38
+ Messages to this address must be OpenPGP-signed by the key that is configured
39
+ for your subscription. If you don't know which one that is, ask an administrator
40
+ of this list. You can contact the administrators by sending a message to
41
+ <%{owner_email}>
42
+ (preferably encrypt it with this addresses' public key:
43
+ %{list_fingerprint}).
44
+ message_unencrypted: Messages to this address must be encrypted conforming to OpenPGP.
45
+ message_unauthenticated: Messages to this address must be encrypted and signed by the key associated with a subscribed address.
46
+ message_sender_not_subscribed: Only subscribed addresses may send messages to this address.
47
+ message_not_from_admin: Only admins may send messages to this address.
48
+ message_empty: |
49
+ Your message was found empty and wasn't passed on to the list.
50
+
51
+ In case you only sent keywords please note that administrative keywords must be sent to the "request"-address (<%{request_address}>) in order to be respected.
52
+ no_linebreaks: "must not include line-breaks"
53
+ list_not_found: "Error: No list found with this address: '%{email}'."
54
+ invalid_listname: "Error: '%{email}' is not a valid address."
55
+ invalid_characters: "contains invalid characters"
56
+ list_exists: A list with address '%{email}' is already present.
57
+ listdir_problem:
58
+ message: "There's a problem with the list-directory: '%{dir}' %{problem}."
59
+ not_existing: does not exist
60
+ not_a_directory: is not a directory
61
+ not_empty: is not empty
62
+ not_writable: is not writable
63
+ not_readable: is not readable
64
+ keyword_admin_only: The keyword '%{keyword}' may only be used by list-admin.
65
+ key_generation_failed: Generating the OpenPGP key pair for %{listname} failed for unknown reasons. Please check the list-directory ('%{listdir}') and the log-files.
66
+ key_adduid_failed: "Adding a user-ID to the OpenPGP key failed with this message:\n%{errmsg}"
67
+ too_many_keys: "Error: In %{listdir} there's more than one matching OpenPGP-key for %{listname}. Please delete all but one."
68
+ unknown_list_option: "Unknown option in %{config_file}: '%{option}'."
69
+ loading_list_settings_failed: "%{config_file} could not be parsed, please check its formatting to be valid YAML."
70
+ message_too_big: "Your message was too big. Allowed are up to %{allowed_size}KB."
71
+ must_be_boolean: "must be true or false"
72
+ must_be_greater_than_zero: "must be a number greater than zero"
73
+ file_not_found: "File not found: '%{file}'."
74
+ not_pgp_mime: "Message was not encrypted in the pgp/mime-format."
75
+ delivery_error: "The following error occurred while sending a message to %{email}: %{error}"
76
+ no_match_for: "No match found for %{input}"
77
+ too_many_matching_keys: |
78
+ Too many matching keys for '%{input}':
79
+ %{key_strings}
80
+ plugins:
81
+ unknown_keyword: Unknown keyword '%{keyword}'.
82
+ plugin_failed: Running keyword '%{keyword}' caused an unknown error. System-admins have been notified.
83
+ keyword_admin_notify_request: "%{signer} sent the keyword '%{keyword}' with the values '%{arguments}' and received this response:"
84
+ keyword_admin_notify_request_without_arguments: "%{signer} sent the keyword '%{keyword}' and received this response:"
85
+ keyword_admin_notify_lists: "%{signer} used the keyword '%{keyword}' with the values '%{arguments}' in a message sent to the list."
86
+ keyword_admin_notify_lists_without_arguments: "%{signer} used the keyword '%{keyword}' in a message sent to the list."
87
+ key_management:
88
+ deleted: "Deleted: %{key_string}"
89
+ not_deletable: "May not be deleted: %{key_string}"
90
+ import_result: "Import result:\n"
91
+ key_import_status:
92
+ imported: imported
93
+ updated: updated
94
+ unchanged: unchanged
95
+ matching_keys_intro: All keys from the list's keyring matching '%{input}' are attached to this message.
96
+ resend:
97
+ not_resent_no_keys: Resending to <%{email}> failed (%{num_keys} keys found and unencrypted sending disallowed).
98
+ encrypted_to: Encrypted to
99
+ unencrypted_to: Unencrypted to
100
+ invalid_recipient: "Invalid email-address for resending: %{address}"
101
+ subscription_management:
102
+ forbidden: "Error: You're not allowed to unsubscribe %{email}."
103
+ is_not_subscribed: "%{email} is not subscribed."
104
+ unsubscribed: "%{email} has been unsubscribed."
105
+ unsubscribing_failed: |
106
+ Unsubscribing %{email} failed:
107
+ %{errors}
108
+ subscribed: |
109
+ %{email} has been subscribed with these attributes:
110
+
111
+ Fingerprint: %{fingerprint}
112
+ Admin? %{admin}
113
+ Email-delivery enabled? %{delivery_enabled}
114
+ subscribing_failed: |
115
+ Subscribing %{email} failed:
116
+
117
+ %{errors}.
118
+ list_of_subscriptions: "Subscriptions:\n"
119
+ set_fingerprint_only_self: Only admins may set fingerprints of subscriptions other than their own.
120
+ fingerprint_set: Fingerprint for %{email} set to %{fingerprint}.
121
+ setting_fingerprint_failed: |
122
+ Setting fingerprint for %{email} to %{fingerprint} failed:
123
+ %{errors}.
124
+ signatures_attached: Find the signatures attached.
125
+ list_management:
126
+ no_logfile: No logfile could be found for %{listname}. (This might be caused by a high log-level and the absence of errors.)
127
+ logfile_attached: The logfile for %{listname} is attached.
128
+ list_public_key_subject: Key for this address
129
+ list_public_key_attached: Find the key for this address attached.
130
+ no_output_result: Your message resulted in no output.
131
+ owner_forward_prefix: The following message was received for the list-owners.
132
+ no_keywords_error: Your message didn't contain any keywords, thus there was nothing to do.
133
+ missing_listname_keyword_error: Your message did not contain the required "X-LIST-NAME" keyword and was rejected.
134
+ wrong_listname_keyword_error: Your message contained an incorrect "X-LIST-NAME" keyword. The keyword argument must match the email address of this list.
135
+ bounces_drop_all: The attached message should have been bounced but was dropped without further notice because the list's configuration defines that no message should ever be bounced.
136
+ bounces_drop_on_headers: "The attached message should have been bounced but was dropped without further notice because it matched this header-line: %{key}: %{value}"
137
+ bounces_notify_admins: "The attached message was bounced with the following notice:"
138
+ notice: Notice
139
+ incoming_message: Incoming message
140
+ forward_all_incoming_to_admins: The attached message was received.
141
+ forward_automated_message_to_admins: Attached is a message that probably was sent by a machine, not a human. Therefore it has not been passed on to the list, but only to you, the admins.
142
+ automated_message_subject: Automated message received
143
+ check_keys: Keys check
144
+ check_keys_intro: "Please take care of these keys for list %{email}."
145
+ key_expires: |
146
+ This key expires in %{days} days:
147
+ %{key_oneline}
148
+ key_unusable: |
149
+ This key is %{usability_issue}:
150
+ %{key_oneline}
151
+ missed_message_due_to_unusable_key: "You missed an email from %{list_email} because your subscription isn't associated with a (usable) OpenPGP key. Please fix this."
152
+ refresh_keys: Keys update
153
+ refresh_keys_intro: "Refreshing all keys from the keyring of list %{email} resulted in this:"
154
+ pin_keys: Keys pinning
155
+ pin_keys_intro: "While checking all subscriptions of list %{email} we were pinning a matching key for the following subscriptions:"
156
+ key_updated: |
157
+ This key was updated (%{states}):
158
+ %{key_oneline}
159
+ key_fetched: |
160
+ This key was fetched (%{states}):
161
+ %{key_oneline}
162
+ import_states:
163
+ unchanged: unchanged
164
+ new_key: new key
165
+ new_uids: new user-IDs
166
+ new_subkeys: new subkeys
167
+ new_signatures: new signatures
168
+ fetch_key:
169
+ invalid_input: "Invalid input. Allowed are: URLs, OpenPGP-fingerprints, or email-addresses."
170
+ pseudoheaders:
171
+ stripped_html_from_multialt: This message included an alternating HTML-part that contained PGP-data. The HTML-part was removed to enable parsing the message more properly.
172
+
173
+ activerecord:
174
+ errors:
175
+ models:
176
+ schleuder/subscription:
177
+ attributes:
178
+ email:
179
+ taken: 'is already subscribed'
metadata CHANGED
@@ -1,180 +1,377 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: schleuder
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.4
4
+ version: 3.2.2
5
5
  platform: ruby
6
6
  authors:
7
- - lunar
8
- - paz
9
- - ng
7
+ - schleuder dev team
10
8
  autorequire:
11
9
  bindir: bin
12
- cert_chain:
13
- - |
14
- -----BEGIN CERTIFICATE-----
15
- MIIDeDCCAmCgAwIBAgIBATANBgkqhkiG9w0BAQUFADBBMRMwEQYDVQQDDApzY2hs
16
- ZXVkZXIyMRUwEwYKCZImiZPyLGQBGRYFbmFkaXIxEzARBgoJkiaJk/IsZAEZFgNv
17
- cmcwHhcNMTMwOTI5MjAwNzQxWhcNMTQwOTI5MjAwNzQxWjBBMRMwEQYDVQQDDApz
18
- Y2hsZXVkZXIyMRUwEwYKCZImiZPyLGQBGRYFbmFkaXIxEzARBgoJkiaJk/IsZAEZ
19
- FgNvcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQChGruoNnq3Ir7d
20
- Fd+ktG0tMZlm2ZSOkuHO5QRrgYLgbBhpTEf8i6AjzoVL0AIC+uMMVY9iE6fzaKUD
21
- B7SvNtccHskX6zHUVVtSqF9VpbQomWpck0iBqwQIw4vELe2iZ+/ZULKIJI/BY43y
22
- tX7Ora8izSyPGcu6E1fr5PJI6igFnlEgs/jCjP/JYHf/f49fnIzAJgO0Q7YNNJVr
23
- R0Zqm1HbYE2t+RtomT2jgCjBtF42hX8+gB4yV5nedfHKyZfD6zd7doPE/pdtpn80
24
- BrRQbHXlEPDCadHH013j7oL7B5fJlHejX6PFfPtepq3adDQ/O3lFvzfHuJUGjEO5
25
- QXp7l5+fAgMBAAGjezB5MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQW
26
- BBSBtRuT8QNZTfwVGJKJr5bbDlgk3jAfBgNVHREEGDAWgRRzY2hsZXVkZXIyQG5h
27
- ZGlyLm9yZzAfBgNVHRIEGDAWgRRzY2hsZXVkZXIyQG5hZGlyLm9yZzANBgkqhkiG
28
- 9w0BAQUFAAOCAQEAOW1oNWquxZegMjQDZF3yTDsXbDAs4JYsLEbjnD2z32nMGvat
29
- wDxKD0g3XIPHEoEi28/3n6C4Py2J+P7gUObr+wWF8G67nwg2tDjarOia93RcpxqW
30
- n4NKeyRmvEzQ+yU+X9xiwJ005mc2ME2j3QF+sjDxgd+uCN0ZT77qz2Kk4iuCGOrM
31
- cuTmrcZdTiHkGhK7UtDn7nk3ShgwrtyC0SqPna+PUMYkPr5FQLVwsOHGExOtVHZX
32
- +VhPezxtXTAQ0pIYXF5NssxnhcngHV8fPs0g4gbU0RRKar9egfgZ8cVITgVauVPt
33
- HdW17U59V5gWNuJBqqwiV2PJubSZekUq/YMdtg==
34
- -----END CERTIFICATE-----
35
- date: 2013-09-30 00:00:00.000000000 Z
10
+ cert_chain: []
11
+ date: 2018-02-06 00:00:00.000000000 Z
36
12
  dependencies:
37
13
  - !ruby/object:Gem::Dependency
38
14
  name: gpgme
39
15
  requirement: !ruby/object:Gem::Requirement
40
16
  requirements:
41
- - - '='
17
+ - - "~>"
42
18
  - !ruby/object:Gem::Version
43
- version: 1.0.8
19
+ version: '2.0'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 2.0.13
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '2.0'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 2.0.13
33
+ - !ruby/object:Gem::Dependency
34
+ name: mail
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: 2.6.0
40
+ type: :runtime
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: 2.6.0
47
+ - !ruby/object:Gem::Dependency
48
+ name: mail-gpg
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: 0.3.0
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: 0.3.0
61
+ - !ruby/object:Gem::Dependency
62
+ name: activerecord
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '4.1'
68
+ type: :runtime
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '4.1'
75
+ - !ruby/object:Gem::Dependency
76
+ name: rack-test
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: 0.7.0
82
+ type: :runtime
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: 0.7.0
89
+ - !ruby/object:Gem::Dependency
90
+ name: rake
91
+ requirement: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ version: 10.5.0
96
+ type: :runtime
97
+ prerelease: false
98
+ version_requirements: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ version: 10.5.0
103
+ - !ruby/object:Gem::Dependency
104
+ name: sqlite3
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: '1'
110
+ type: :runtime
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - "~>"
115
+ - !ruby/object:Gem::Version
116
+ version: '1'
117
+ - !ruby/object:Gem::Dependency
118
+ name: sinatra
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - "~>"
122
+ - !ruby/object:Gem::Version
123
+ version: '1'
44
124
  type: :runtime
45
125
  prerelease: false
46
126
  version_requirements: !ruby/object:Gem::Requirement
47
127
  requirements:
48
- - - '='
128
+ - - "~>"
49
129
  - !ruby/object:Gem::Version
50
- version: 1.0.8
130
+ version: '1'
51
131
  - !ruby/object:Gem::Dependency
52
- name: highline
132
+ name: sinatra-contrib
53
133
  requirement: !ruby/object:Gem::Requirement
54
134
  requirements:
55
- - - '>='
135
+ - - "~>"
56
136
  - !ruby/object:Gem::Version
57
- version: 1.6.1
137
+ version: '1'
58
138
  type: :runtime
59
139
  prerelease: false
60
140
  version_requirements: !ruby/object:Gem::Requirement
61
141
  requirements:
62
- - - '>='
142
+ - - "~>"
63
143
  - !ruby/object:Gem::Version
64
- version: 1.6.1
144
+ version: '1'
65
145
  - !ruby/object:Gem::Dependency
66
- name: log4r
146
+ name: thor
67
147
  requirement: !ruby/object:Gem::Requirement
68
148
  requirements:
69
- - - '>='
149
+ - - "~>"
70
150
  - !ruby/object:Gem::Version
71
- version: 1.1.9
151
+ version: '0'
72
152
  type: :runtime
73
153
  prerelease: false
74
154
  version_requirements: !ruby/object:Gem::Requirement
75
155
  requirements:
76
- - - '>='
156
+ - - "~>"
77
157
  - !ruby/object:Gem::Version
78
- version: 1.1.9
158
+ version: '0'
79
159
  - !ruby/object:Gem::Dependency
80
- name: ruby-filemagic
160
+ name: thin
81
161
  requirement: !ruby/object:Gem::Requirement
82
162
  requirements:
83
- - - '>='
163
+ - - "~>"
84
164
  - !ruby/object:Gem::Version
85
- version: 0.4.2
165
+ version: '1'
86
166
  type: :runtime
87
167
  prerelease: false
88
168
  version_requirements: !ruby/object:Gem::Requirement
89
169
  requirements:
90
- - - '>='
170
+ - - "~>"
171
+ - !ruby/object:Gem::Version
172
+ version: '1'
173
+ - !ruby/object:Gem::Dependency
174
+ name: rspec
175
+ requirement: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - "~>"
178
+ - !ruby/object:Gem::Version
179
+ version: 3.5.0
180
+ type: :development
181
+ prerelease: false
182
+ version_requirements: !ruby/object:Gem::Requirement
183
+ requirements:
184
+ - - "~>"
185
+ - !ruby/object:Gem::Version
186
+ version: 3.5.0
187
+ - !ruby/object:Gem::Dependency
188
+ name: hirb
189
+ requirement: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - ">="
192
+ - !ruby/object:Gem::Version
193
+ version: '0'
194
+ type: :development
195
+ prerelease: false
196
+ version_requirements: !ruby/object:Gem::Requirement
197
+ requirements:
198
+ - - ">="
91
199
  - !ruby/object:Gem::Version
92
- version: 0.4.2
200
+ version: '0'
201
+ - !ruby/object:Gem::Dependency
202
+ name: factory_girl
203
+ requirement: !ruby/object:Gem::Requirement
204
+ requirements:
205
+ - - ">="
206
+ - !ruby/object:Gem::Version
207
+ version: '0'
208
+ type: :development
209
+ prerelease: false
210
+ version_requirements: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - ">="
213
+ - !ruby/object:Gem::Version
214
+ version: '0'
215
+ - !ruby/object:Gem::Dependency
216
+ name: database_cleaner
217
+ requirement: !ruby/object:Gem::Requirement
218
+ requirements:
219
+ - - ">="
220
+ - !ruby/object:Gem::Version
221
+ version: '0'
222
+ type: :development
223
+ prerelease: false
224
+ version_requirements: !ruby/object:Gem::Requirement
225
+ requirements:
226
+ - - ">="
227
+ - !ruby/object:Gem::Version
228
+ version: '0'
229
+ - !ruby/object:Gem::Dependency
230
+ name: simplecov-console
231
+ requirement: !ruby/object:Gem::Requirement
232
+ requirements:
233
+ - - ">="
234
+ - !ruby/object:Gem::Version
235
+ version: '0'
236
+ type: :development
237
+ prerelease: false
238
+ version_requirements: !ruby/object:Gem::Requirement
239
+ requirements:
240
+ - - ">="
241
+ - !ruby/object:Gem::Version
242
+ version: '0'
93
243
  description: |-
94
- Schleuder is a group's gateway: subscribers can communicate encrypted (and pseudonymously) among themselves, receive emails from non-subscribers and send emails to non-subscribers via the list.
244
+ Schleuder is a group's email-gateway: subscribers can exchange encrypted emails among themselves, receive emails from non-subscribers and send emails to non-subscribers via the list.
95
245
 
96
- Schleuder takes care of all decryption and encryption, stripping of headers, formatting conversions, etc. Schleuder can also send out its own public key upon request and process administrative commands by email.
97
- email: schleuder2@nadir.org
246
+ (Please note: For some platforms there's a better way of installing Schleuder than `gem install`. See <https://schleuder.nadir.org/docs/#installation> for details.)
247
+ email: schleuder@nadir.org
98
248
  executables:
99
249
  - schleuder
100
- - schleuder-newlist
101
- - schleuder-fix-gem-dependencies
102
- - schleuder-init-setup
103
- - schleuder-migrate-v2.1-to-v2.2
250
+ - schleuder-api-daemon
104
251
  extensions: []
105
252
  extra_rdoc_files: []
106
253
  files:
107
- - contrib/check-expired-keys.rb
108
- - contrib/mutt-schleuder-colors.rc
109
- - contrib/mutt-schleuder-resend.vim
110
- - contrib/smtpserver.rb
111
- - ext/default-list.conf
112
- - ext/default-members.conf
113
- - ext/list.conf.example
114
- - ext/schleuder.conf
254
+ - README.md
255
+ - Rakefile
256
+ - bin/pinentry-clearpassphrase
257
+ - bin/schleuder
258
+ - bin/schleuder-api-daemon
259
+ - db/migrate/20140501103532_create_lists.rb
260
+ - db/migrate/20140501112859_create_subscriptions.rb
261
+ - db/migrate/201508092100_add_language_to_lists.rb
262
+ - db/migrate/20150812165700_change_keywords_admin_only_defaults.rb
263
+ - db/migrate/20150813235800_add_forward_all_incoming_to_admins.rb
264
+ - db/migrate/201508141727_change_send_encrypted_only_default.rb
265
+ - db/migrate/201508222143_add_logfiles_to_keep_to_lists.rb
266
+ - db/migrate/201508261723_rename_delivery_disabled_to_delivery_enabled_and_change_default.rb
267
+ - db/migrate/201508261815_strip_gpg_passphrase.rb
268
+ - db/migrate/201508261827_remove_default_mime.rb
269
+ - db/migrate/20160501172700_fix_headers_to_meta_defaults.rb
270
+ - db/migrate/20170713215059_add_internal_footer_to_list.rb
271
+ - db/schema.rb
272
+ - etc/init.d/schleuder-api-daemon
273
+ - etc/list-defaults.yml
274
+ - etc/postfix/schleuder_sqlite.cf
275
+ - etc/schleuder-api-daemon.service
276
+ - etc/schleuder.cron.weekly
277
+ - etc/schleuder.yml
278
+ - lib/schleuder-api-daemon.rb
115
279
  - lib/schleuder.rb
116
- - lib/schleuder/archiver.rb
117
- - lib/schleuder/crypt.rb
118
- - lib/schleuder/errors.rb
280
+ - lib/schleuder/cli.rb
281
+ - lib/schleuder/cli/cert.rb
282
+ - lib/schleuder/cli/schleuder_cert_manager.rb
283
+ - lib/schleuder/cli/subcommand_fix.rb
284
+ - lib/schleuder/conf.rb
285
+ - lib/schleuder/errors/active_model_error.rb
286
+ - lib/schleuder/errors/base.rb
287
+ - lib/schleuder/errors/decryption_failed.rb
288
+ - lib/schleuder/errors/fatal_error.rb
289
+ - lib/schleuder/errors/file_not_found.rb
290
+ - lib/schleuder/errors/invalid_listname.rb
291
+ - lib/schleuder/errors/key_adduid_failed.rb
292
+ - lib/schleuder/errors/key_generation_failed.rb
293
+ - lib/schleuder/errors/keyword_admin_only.rb
294
+ - lib/schleuder/errors/list_exists.rb
295
+ - lib/schleuder/errors/list_not_found.rb
296
+ - lib/schleuder/errors/list_property_missing.rb
297
+ - lib/schleuder/errors/listdir_problem.rb
298
+ - lib/schleuder/errors/loading_list_settings_failed.rb
299
+ - lib/schleuder/errors/message_empty.rb
300
+ - lib/schleuder/errors/message_not_from_admin.rb
301
+ - lib/schleuder/errors/message_sender_not_subscribed.rb
302
+ - lib/schleuder/errors/message_too_big.rb
303
+ - lib/schleuder/errors/message_unauthenticated.rb
304
+ - lib/schleuder/errors/message_unencrypted.rb
305
+ - lib/schleuder/errors/message_unsigned.rb
306
+ - lib/schleuder/errors/standard_error.rb
307
+ - lib/schleuder/errors/too_many_keys.rb
308
+ - lib/schleuder/errors/unknown_list_option.rb
309
+ - lib/schleuder/filters/auth_filter.rb
310
+ - lib/schleuder/filters/bounces_filter.rb
311
+ - lib/schleuder/filters/forward_filter.rb
312
+ - lib/schleuder/filters/forward_incoming.rb
313
+ - lib/schleuder/filters/hotmail_message_filter.rb
314
+ - lib/schleuder/filters/max_message_size.rb
315
+ - lib/schleuder/filters/request_filter.rb
316
+ - lib/schleuder/filters/send_key_filter.rb
317
+ - lib/schleuder/filters/strip_alternative_filter.rb
318
+ - lib/schleuder/filters_runner.rb
319
+ - lib/schleuder/gpgme/ctx.rb
320
+ - lib/schleuder/gpgme/import_status.rb
321
+ - lib/schleuder/gpgme/key.rb
322
+ - lib/schleuder/gpgme/sub_key.rb
323
+ - lib/schleuder/gpgme/user_id.rb
119
324
  - lib/schleuder/list.rb
120
- - lib/schleuder/list_config.rb
121
- - lib/schleuder/log/listlogger.rb
122
- - lib/schleuder/log/outputter/emailoutputter.rb
123
- - lib/schleuder/log/outputter/metaemailoutputter.rb
124
- - lib/schleuder/log/schleuderlogger.rb
125
- - lib/schleuder/mail.rb
126
- - lib/schleuder/mailer.rb
127
- - lib/schleuder/member.rb
128
- - lib/schleuder/plugin.rb
129
- - lib/schleuder/processor.rb
130
- - lib/schleuder/schleuder_config.rb
131
- - lib/schleuder/storage.rb
132
- - lib/schleuder/utils.rb
325
+ - lib/schleuder/list_builder.rb
326
+ - lib/schleuder/listlogger.rb
327
+ - lib/schleuder/logger.rb
328
+ - lib/schleuder/logger_notifications.rb
329
+ - lib/schleuder/mail/message.rb
330
+ - lib/schleuder/mail/parts_list.rb
331
+ - lib/schleuder/plugin_runners/base.rb
332
+ - lib/schleuder/plugin_runners/list_plugins_runner.rb
333
+ - lib/schleuder/plugin_runners/request_plugins_runner.rb
334
+ - lib/schleuder/plugins/attach_listkey.rb
335
+ - lib/schleuder/plugins/get_version.rb
336
+ - lib/schleuder/plugins/key_management.rb
337
+ - lib/schleuder/plugins/list_management.rb
338
+ - lib/schleuder/plugins/resend.rb
339
+ - lib/schleuder/plugins/sign_this.rb
340
+ - lib/schleuder/plugins/subscription_management.rb
341
+ - lib/schleuder/runner.rb
342
+ - lib/schleuder/subscription.rb
343
+ - lib/schleuder/validators/boolean_validator.rb
344
+ - lib/schleuder/validators/email_validator.rb
345
+ - lib/schleuder/validators/fingerprint_validator.rb
346
+ - lib/schleuder/validators/greater_than_zero_validator.rb
347
+ - lib/schleuder/validators/no_line_breaks_validator.rb
133
348
  - lib/schleuder/version.rb
134
- - plugins/README
135
- - plugins/manage_keys_plugin.rb
136
- - plugins/manage_members_plugin.rb
137
- - plugins/manage_self_plugin.rb
138
- - plugins/resend_plugin.rb
139
- - plugins/sign_this_plugin.rb
140
- - plugins/version_plugin.rb
141
- - README
142
- - LICENSE
143
- - man/schleuder.8
144
- - man/schleuder-newlist.8
145
- - bin/schleuder
146
- - bin/schleuder-newlist
147
- - bin/schleuder-fix-gem-dependencies
148
- - bin/schleuder-init-setup
149
- - bin/schleuder-migrate-v2.1-to-v2.2
150
- homepage: http://schleuder2.nadir.org
349
+ - locales/de.yml
350
+ - locales/en.yml
351
+ homepage: https://schleuder.nadir.org/
151
352
  licenses:
152
- - GPL-2
353
+ - GPL-3.0
153
354
  metadata: {}
154
- post_install_message: |2+
155
-
156
-
157
- Note: There's still one dependency missing, which we can't install in
158
- this run of rubygems. Please execute schleuder-fix-gem-dependencies to
159
- complete the installation!
160
-
355
+ post_install_message: "\n\n Please consider additionally installing schleuder-cli
356
+ (allows to\n configure lists from the command line).\n\n To set up Schleuder
357
+ on this system please run `schleuder install`.\n\n "
161
358
  rdoc_options: []
162
359
  require_paths:
163
360
  - lib
164
361
  required_ruby_version: !ruby/object:Gem::Requirement
165
362
  requirements:
166
- - - '>='
363
+ - - ">="
167
364
  - !ruby/object:Gem::Version
168
365
  version: '0'
169
366
  required_rubygems_version: !ruby/object:Gem::Requirement
170
367
  requirements:
171
- - - '>='
368
+ - - ">="
172
369
  - !ruby/object:Gem::Version
173
370
  version: '0'
174
371
  requirements: []
175
- rubyforge_project: '[none]'
176
- rubygems_version: 2.0.3
372
+ rubyforge_project: "[none]"
373
+ rubygems_version: 2.7.3
177
374
  signing_key:
178
375
  specification_version: 4
179
- summary: 'Schleuder is a group''s gateway: a gpg-enabled mailinglist with remailing-capabilities.'
376
+ summary: Schleuder is a gpg-enabled mailinglist with remailing-capabilities.
180
377
  test_files: []