#!/usr/bin/perl -w
-# Copyright (C) 2014, Eric Wong <e@80x24.org> and all contributors
+# Copyright (C) all contributors <meta@public-inbox.org>
# License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
-#
-# Script to import a Maildir into a public-inbox
=begin usage
+Ancient script to import a Maildir into a v1 public-inbox
+
+ # this is only if you want a v1 inbox
export GIT_DIR=/path/to/your/repo.git
export GIT_AUTHOR_EMAIL='list@example.com'
export GIT_AUTHOR_NAME='list name'
./import_maildir /path/to/maildir/
+
+For v2 (strongly recommended), use:
+
+ lei convert /path/to/maildir -o /path/to/v2-inbox
+ # (and `lei daemon-kill' if you don't want the daemon to linger)
=cut
-use strict;
-use warnings;
+use v5.12;
use Date::Parse qw/str2time/;
use PublicInbox::Eml;
use PublicInbox::Git;
use PublicInbox::Import;
-sub usage { "Usage:\n".join('', grep(/\t/, `head -n 24 $0`)) }
+sub usage {
+ open my $fh, '<', __FILE__;
+ ("Usage:\n", grep { /^=begin usage/../^=cut/ and !/^=/m } <$fh>);
+}
my $dir = shift @ARGV or die usage();
my $git_dir = `git rev-parse --git-dir`;
chomp $git_dir;
#!/usr/bin/perl -w
-# Copyright (C) 2015-2021 all contributors <meta@public-inbox.org>
+# Copyright (C) all contributors <meta@public-inbox.org>
# License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
-#
-# Incremental (or one-shot) importer of a slrnpull news spool
=begin usage
+Incremental (or one-shot) importer of a slrnpull news spool.
+
+Since the news spool can appear as an MH folder, you may also use
+lei from public-inbox 2.0+ to convert it:
+
+ lei convert mh:$SLRNPULL_ROOT/news/foo/bar -o v2:/path/to/inbox/
+ # (and `lei daemon-kill' if you don't want the daemon to linger)
+
+But if you want to use this script:
+
export ORIGINAL_RECIPIENT=address@example.com
- public-inbox-init $INBOX $GIT_DIR $HTTP_URL $ORIGINAL_RECIPIENT
- ./import_slrnspool SLRNPULL_ROOT/news/foo/bar
+ public-inbox-init -V2 $INBOX $INBOX_DIR $HTTP_URL $ORIGINAL_RECIPIENT
+ ./import_slrnspool $SLRNPULL_ROOT/news/foo/bar
=cut
-use strict;
-use warnings;
+use v5.12;
use PublicInbox::Config;
use PublicInbox::Eml;
use PublicInbox::Import;
use PublicInbox::Git;
-sub usage { "Usage:\n".join('',grep(/\t/, `head -n 10 $0`)) }
+sub usage {
+ open my $fh, '<', __FILE__;
+ ("Usage:\n", grep { /^=begin usage/../^=cut/ and !/^=/m } <$fh>);
+}
my $exit = 0;
my $sighandler = sub { $exit = 1 };
$SIG{INT} = $sighandler;
#!/usr/bin/perl -w
-# Copyright (C) 2016-2021 all contributors <meta@public-inbox.org>
+# Copyright (C) all contributors <meta@public-inbox.org>
# License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
-use strict;
-use warnings;
+# consider `lei convert' instead since it handles more formats
+use v5.12;
use Getopt::Long qw/:config gnu_getopt no_ignore_case auto_abbrev/;
use PublicInbox::InboxWritable;
my $usage = "usage: $0 NAME EMAIL DIR <MBOX\n";