{ "created": "2015-12-20T19:56:42Z", "hierarchy": [ { "name": "ROOT", "type": "folder", "uri": "/ROOT" }, { "name": "Working with MinorDomo", "type": "article", "uri": "Working_with_MinorDomo" } ], "html": "\n\n \n \n \n \n \n \n \n \n \n \n \n Working with MinorDomo – Nikhil's Personal Wiki\n \n \n \n \n \n
\n
\n \n
\n
\n \n \n\n

Working with MinorDomo\n \n

\n

MinorDomo is a “minimalistic replacement for
\nMajorDomo”. In this guide:

\n\n

Creating a new mailing list

\n

First copy over the sample list to the MinorDomo lists folder:

\n
cd /home/minordomo\ncp -r /usr/doc/minordomo-0.6.1/sample-list developers\n
\n

Here’s a table of entities in the folder you just copied. Keep in that some of
\nthese might not exist!

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
NameTypeFunction
listFileContains email addresses, one per line
footerFileContains text which is to be appended to every message sent to this list (e.g. disclaimer, unsubscribe info).
Can use placeholders for administrator email (\\a), domain name (\\d), mailing list name (\\l, sans domain), lisr URI (\\u).
infoFileInformation on the list. Obtained by an email to the list with subject line “info developers
one-linerFileA one-line description of the list
configFileList configuration file. If present, overrides /etc/minordomo.conf Two important directives:
open_lists=none makes this a ‘closed’ list
subject_prefix=[Developers List] gives each message a prefix “Developers List”
archiveDirectoryAll messages sent to the list are saved in this folder. It is not created when you copy the sample list above. Messages are stored in YYYY/MM/DD/ sub-folders. You can get awesome HTML output with HyperMail
\n\n

Now test the list with an email.

\n

Working with MinorDomo Lists

\n

Sending an email to minordomo@example.com with the following subject lines does a variety of things:

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
Subject LineAction
subscribe <list>subscribes to a mailing list
unsubscribe <list>unsubscribes from a mailing list
info [<list>]gets information on a list or server
list <list>returns a subscriber list if enabled
\n

Sample HyperMail Script

\n
#!/usr/bin/perl -w\n\numask 0000;\n\n$archive_dir = "/home/minordomo/archive";\n$output_dir = "/home/minordomo/archive/html";\n\n@years = `ls $archive_dir`;\nchomp @years;\n\nforeach $year (@years) {\n\n        unless (-e "$output_dir/$year") {\n                mkdir "$output_dir/$year";\n        }\n        `find $archive_dir/$year -type f | xargs cat | /usr/local/bin/hypermail -x -d $output_dir/$year`;\n}\n
\n\n\n
\n \n
\n \n \n \n \n \n\n", "id": "0da26779-215e-5a6d-9af8-b1d094555009", "modified": "2024-04-15T23:13:03Z", "revisions": [ { "authorEmail": "mail@nikhil.io", "authorName": "Nikhil Anand", "date": "2024-04-15T23:13:03Z", "id": "1f343266dce411121f0cff3ca7e3e0632be6ce97", "shortId": "1f343266", "subject": "Some more notes\n", "content": "MinorDomo is a \"minimalistic replacement for \n[MajorDomo](http://www.greatcircle.com/majordomo/)\". In this guide:\n\n* I have my MinorDomo lists at `/home/minordomo`\n* I'll be creating a list called `developers@example.com`\n * All messages sent to this list will be archived\n * Only individuals on the list can send messages to the list (i.e. it's not 'open')\n\nCreating a new mailing list\n---------------------------\n\nFirst copy over the sample list to the MinorDomo lists folder:\n\n cd /home/minordomo\n cp -r /usr/doc/minordomo-0.6.1/sample-list developers\n\nHere's a table of entities in the folder you just copied. Keep in that some of \nthese might not exist!\n\n| Name | Type | Function |\n|-------------|-----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `list` | File | Contains email addresses, one per line |\n| `footer` | File | Contains text which is to be appended to every message sent to this list (e.g. disclaimer, unsubscribe info).
Can use placeholders for administrator email (`\\a`), domain name (`\\d`), mailing list name (`\\l`, sans domain), lisr URI (`\\u`). |\n| `info` | File | Information on the list. Obtained by an email to the list with subject line \"**info developers**\" |\n| `one-liner` | File | A one-line description of the list |\n| `config` | File | List configuration file. If present, overrides `/etc/minordomo.conf` Two important directives:
`open_lists=none` makes this a 'closed' list
`subject_prefix=[Developers List]` gives each message a prefix \"Developers List\" |\n| `archive` | Directory | All messages sent to the list are saved in this folder. It is not created when you copy the sample list above. Messages are stored in YYYY/MM/DD/ sub-folders. You can get awesome HTML output with [HyperMail](http://www.hypermail-project.org/hypermail.html) |\n\n* Once you're done editing things to your heart's content, **change the permissions** to `nobody:nobody`. \n* Then **add the following** to `/etc/aliases`:\n\n developers: \"|/usr/sbin/minordomo.pl developers\"\n\n* Rebuild the aliases DB by **issuing** `newaliases`\n\nNow test the list with an email. \n\nWorking with MinorDomo Lists\n----------------------------\n\nSending an email to `minordomo@example.com` with the following subject lines does a variety of things:\n\n| Subject Line | Action |\n|--------------------|--------------------------------------|\n| subscribe `` | subscribes to a mailing list |\n| unsubscribe `` | unsubscribes from a mailing list |\n| info [``] | gets information on a list or server |\n| list `` | returns a subscriber list if enabled |\n\nSample HyperMail Script\n-----------------------\n\n #!/usr/bin/perl -w\n\n umask 0000;\n\n $archive_dir = \"/home/minordomo/archive\";\n $output_dir = \"/home/minordomo/archive/html\";\n\n @years = `ls $archive_dir`;\n chomp @years;\n\n foreach $year (@years) {\n\n unless (-e \"$output_dir/$year\") {\n mkdir \"$output_dir/$year\";\n }\n `find $archive_dir/$year -type f | xargs cat | /usr/local/bin/hypermail -x -d $output_dir/$year`;\n }\n" }, { "authorEmail": "mail@nikhil.io", "authorName": "Nikhil Anand", "date": "2015-12-27T07:27:56Z", "id": "5a5b1a32f41081d062ab86f8869a961bcad79668", "shortId": "5a5b1a32", "subject": "Fix Markdown conversion\n\nSaw half a season of The Office\n", "content": "MinorDomo is a \"minimalistic replacement for \n[MajorDomo](http://www.greatcircle.com/majordomo/)\". In this guide:\n\n* I have my MinorDomo lists at `/home/minordomo`\n* I'll be creating a list called `developers@example.com`\n * All messages sent to this list will be archived\n * Only individuals on the list can send messages to the list (i.e. it's not 'open')\n\nCreating a new mailing list\n---------------------------\n\nFirst copy over the sample list to the MinorDomo lists folder:\n\n cd /home/minordomo\n cp -r /usr/doc/minordomo-0.6.1/sample-list developers\n\nHere's a table of entities in the folder you just copied. Keep in that some of \nthese might not exist!\n\n| Name | Type | Function |\n|-------------|-----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `list` | File | Contains email addresses, one per line |\n| `footer` | File | Contains text which is to be appended to every message sent to this list (e.g. disclaimer, unsubscribe info).
Can use placeholders for administrator email (`\\a`), domain name (`\\d`), mailing list name (`\\l`, sans domain), lisr URI (`\\u`). |\n| `info` | File | Information on the list. Obtained by an email to the list with subject line \"**info developers**\" |\n| `one-liner` | File | A one-line description of the list |\n| `config` | File | List configuration file. If present, overrides `/etc/minordomo.conf` Two important directives:
`open_lists=none` makes this a 'closed' list
`subject_prefix=[Developers List]` gives each message a prefix \"Developers List\" |\n| `archive` | Directory | All messages sent to the list are saved in this folder. It is not created when you copy the sample list above. Messages are stored in YYYY/MM/DD/ sub-folders. You can get awesome HTML output with [HyperMail](http://www.hypermail-project.org/hypermail.html) |\n\n* Once you're done editing things to your heart's content, **change the permissions** to `nobody:nobody`. \n* Then **add the following** to `/etc/aliases`:\n\n developers: \"|/usr/sbin/minordomo.pl developers\"\n\n* Rebuild the aliases DB by **issuing** `newaliases`\n\nNow test the list with an email. \n\nWorking with MinorDomo Lists\n----------------------------\n\nSending an email to `minordomo@example.com` with the following subject lines does a variety of things:\n\n| Subject Line | Action |\n|--------------------|--------------------------------------|\n| subscribe `` | subscribes to a mailing list |\n| unsubscribe `` | unsubscribes from a mailing list |\n| info [``] | gets information on a list or server |\n| list `` | returns a subscriber list if enabled |\n\nSample HyperMail Script\n-----------------------\n\n #!/usr/bin/perl -w\n\n umask 0000;\n\n $archive_dir = \"/home/minordomo/archive\";\n $output_dir = \"/home/minordomo/archive/html\";\n\n @years = `ls $archive_dir`;\n chomp @years;\n\n foreach $year (@years) {\n\n unless (-e \"$output_dir/$year\") {\n mkdir \"$output_dir/$year\";\n }\n `find $archive_dir/$year -type f | xargs cat | /usr/local/bin/hypermail -x -d $output_dir/$year`;\n }\n" }, { "authorEmail": "mail@nikhil.io", "authorName": "Nikhil Anand", "date": "2015-12-21T02:30:47Z", "id": "3f2c54b1d767218fcb4855fbac306b015afaf551", "shortId": "3f2c54b1", "subject": "Incremental\n", "content": "MinorDomo is a \"minimalistic replacement for\n[MajorDomo](http://www.greatcircle.com/majordomo/)\".\n\nIn this guide:\n\n- I have my MinorDomo lists at `/home/minordomo`\n- I'll be creating a list called `developers@example.com`\n - All messages sent to this list will be archived\n - Only individuals on the list can send messages to the list (i.e.\n it's not 'open')\n\nCreating a new mailing list\n---------------------------\n\nFirst copy over the sample list to the MinorDomo lists folder:\n\n` cd /home/minordomo` \n` cp -r /usr/doc/minordomo-0.6.1/sample-list developers`\n\nHere's a table of entities in the folder you just copied. **Keep in\nmind** that some of these might not exist!\n\n| Name | Type | Function |-------- | `list` | File | Contains email addresses, one per line |-------- | `footer` | File | Contains text which is to be appended to every message sent to this list (e.g. disclaimer, unsubscribe info). Can use placeholders for administrator email (`\\a`), domain name (`\\d`), mailing list name (`\\l`, sans domain), lisr URI (`\\u`). |-------- | `info` | File | Information on the list. Obtained by an email to the list with subject line \"**info developers**\" |-------- | `one-liner` | File | A one-line description of the list |-------- | `config` | File | List configuration file. If present, overrides `/etc/minordomo.conf` Two important directives: \n \n - `open_lists=none` makes this a 'closed' list \n - `subject_prefix=[Developers List]` gives each message a prefix \"Developers List\" \n \n |-------- | `archive` | Directory | All messages sent to the list are saved in this folder. It is not created when you copy the sample list above. Messages are stored in YYYY/MM/DD/ sub-folders. You can get awesome HTML output with [HyperMail](http://www.hypermail-project.org/hypermail.html) |\n|------|------|--------------------|--------|------|--------------------------------------------------|----------|------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|------|-------------------------------------------------------------------------------------------------------------|-------------|------|----------------------------------------------|----------|------|------------------------------------------------------------------------------------------------|-----------|-----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n\n- Once you're done editing things to your heart's content, **change\n the permissions** to `nobody:nobody`.\n- Then **add the following** to `/etc/aliases`:\n\n` developers: \"|/usr/sbin/minordomo.pl developers\"`\n\n- Rebuild the aliases DB by **issuing** `newaliases`\n\nNow test the list with an email.\n\nWorking with MinorDomo Lists\n----------------------------\n\nSending an email to `minordomo@example.com` with the following subject\nlines does a variety of things:\n\n| Subject Line | Action |-------- | subscribe | subscribes to a mailing list |-------- | unsubscribe | unsubscribes from a mailing list |-------- | info \\[\\] | gets information on a list or server |-------- | list | returns a subscriber list if enabled |\n|--------------|------------------|------------------|----------------------------------------|--------------------|--------------------------------------------|-----------------|------------------------------------------------|-------------|--------------------------------------|\n\nSample HyperMail Script\n-----------------------\n\n #!/usr/bin/perl -w\n\n umask 0000;\n\n $archive_dir = \"/home/minordomo/archive\";\n $output_dir = \"/home/minordomo/archive/html\";\n\n @years = `ls $archive_dir`;\n chomp @years;\n\n foreach $year (@years) {\n\n unless (-e \"$output_dir/$year\") {\n mkdir \"$output_dir/$year\";\n }\n `find $archive_dir/$year -type f | xargs cat | /usr/local/bin/hypermail -x -d $output_dir/$year`;\n }\n\n\n\n" }, { "authorEmail": "mail@nikhil.io", "authorName": "Nikhil Anand", "date": "2015-12-20T19:56:42Z", "id": "c0b1b5faec69aa378bcad3f861c53bb6a882c6b9", "shortId": "c0b1b5fa", "subject": "Working with MinorDomo : First Draft", "content": "MinorDomo is a \"minimalistic replacement for\n[MajorDomo](http://www.greatcircle.com/majordomo/)\".\n\nIn this guide:\n\n- I have my MinorDomo lists at `/home/minordomo`\n- I'll be creating a list called `developers@example.com`\n - All messages sent to this list will be archived\n - Only individuals on the list can send messages to the list (i.e.\n it's not 'open')\n\nCreating a new mailing list\n---------------------------\n\nFirst copy over the sample list to the MinorDomo lists folder:\n\n` cd /home/minordomo` \n` cp -r /usr/doc/minordomo-0.6.1/sample-list developers`\n\nHere's a table of entities in the folder you just copied. **Keep in\nmind** that some of these might not exist!\n\n| Name | Type | Function |-------- | `list` | File | Contains email addresses, one per line |-------- | `footer` | File | Contains text which is to be appended to every message sent to this list (e.g. disclaimer, unsubscribe info). Can use placeholders for administrator email (`\\a`), domain name (`\\d`), mailing list name (`\\l`, sans domain), lisr URI (`\\u`). |-------- | `info` | File | Information on the list. Obtained by an email to the list with subject line \"**info developers**\" |-------- | `one-liner` | File | A one-line description of the list |-------- | `config` | File | List configuration file. If present, overrides `/etc/minordomo.conf` Two important directives: \n \n - `open_lists=none` makes this a 'closed' list \n - `subject_prefix=[Developers List]` gives each message a prefix \"Developers List\" \n \n |-------- | `archive` | Directory | All messages sent to the list are saved in this folder. It is not created when you copy the sample list above. Messages are stored in YYYY/MM/DD/ sub-folders. You can get awesome HTML output with [HyperMail](http://www.hypermail-project.org/hypermail.html) |\n|------|------|--------------------|--------|------|--------------------------------------------------|----------|------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|------|-------------------------------------------------------------------------------------------------------------|-------------|------|----------------------------------------------|----------|------|------------------------------------------------------------------------------------------------|-----------|-----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n\n- Once you're done editing things to your heart's content, **change\n the permissions** to `nobody:nobody`.\n- Then **add the following** to `/etc/aliases`:\n\n` developers: \"|/usr/sbin/minordomo.pl developers\"`\n\n- Rebuild the aliases DB by **issuing** `newaliases`\n\nNow test the list with an email.\n\nWorking with MinorDomo Lists\n----------------------------\n\nSending an email to `minordomo@example.com` with the following subject\nlines does a variety of things:\n\n| Subject Line | Action |-------- | subscribe | subscribes to a mailing list |-------- | unsubscribe | unsubscribes from a mailing list |-------- | info \\[\\] | gets information on a list or server |-------- | list | returns a subscriber list if enabled |\n|--------------|------------------|------------------|----------------------------------------|--------------------|--------------------------------------------|-----------------|------------------------------------------------|-------------|--------------------------------------|\n\nSample HyperMail Script\n-----------------------\n\n #!/usr/bin/perl -w\n\n umask 0000;\n\n $archive_dir = \"/home/minordomo/archive\";\n $output_dir = \"/home/minordomo/archive/html\";\n\n @years = `ls $archive_dir`;\n chomp @years;\n\n foreach $year (@years) {\n\n unless (-e \"$output_dir/$year\") {\n mkdir \"$output_dir/$year\";\n }\n `find $archive_dir/$year -type f | xargs cat | /usr/local/bin/hypermail -x -d $output_dir/$year`;\n }\n\n[Category:Nikhil's Notes](Category:Nikhil's_Notes \"wikilink\")\n[Category:From a past sysadmin\nlife](Category:From_a_past_sysadmin_life \"wikilink\")\n" } ], "sizeInBytes": 4318, "source": "MinorDomo is a \"minimalistic replacement for \n[MajorDomo](http://www.greatcircle.com/majordomo/)\". In this guide:\n\n* I have my MinorDomo lists at `/home/minordomo`\n* I'll be creating a list called `developers@example.com`\n * All messages sent to this list will be archived\n * Only individuals on the list can send messages to the list (i.e. it's not 'open')\n\nCreating a new mailing list\n---------------------------\n\nFirst copy over the sample list to the MinorDomo lists folder:\n\n cd /home/minordomo\n cp -r /usr/doc/minordomo-0.6.1/sample-list developers\n\nHere's a table of entities in the folder you just copied. Keep in that some of \nthese might not exist!\n\n| Name | Type | Function |\n|-------------|-----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `list` | File | Contains email addresses, one per line |\n| `footer` | File | Contains text which is to be appended to every message sent to this list (e.g. disclaimer, unsubscribe info).
Can use placeholders for administrator email (`\\a`), domain name (`\\d`), mailing list name (`\\l`, sans domain), lisr URI (`\\u`). |\n| `info` | File | Information on the list. Obtained by an email to the list with subject line \"**info developers**\" |\n| `one-liner` | File | A one-line description of the list |\n| `config` | File | List configuration file. If present, overrides `/etc/minordomo.conf` Two important directives:
`open_lists=none` makes this a 'closed' list
`subject_prefix=[Developers List]` gives each message a prefix \"Developers List\" |\n| `archive` | Directory | All messages sent to the list are saved in this folder. It is not created when you copy the sample list above. Messages are stored in YYYY/MM/DD/ sub-folders. You can get awesome HTML output with [HyperMail](http://www.hypermail-project.org/hypermail.html) |\n\n* Once you're done editing things to your heart's content, **change the permissions** to `nobody:nobody`. \n* Then **add the following** to `/etc/aliases`:\n\n developers: \"|/usr/sbin/minordomo.pl developers\"\n\n* Rebuild the aliases DB by **issuing** `newaliases`\n\nNow test the list with an email. \n\nWorking with MinorDomo Lists\n----------------------------\n\nSending an email to `minordomo@example.com` with the following subject lines does a variety of things:\n\n| Subject Line | Action |\n|--------------------|--------------------------------------|\n| subscribe `` | subscribes to a mailing list |\n| unsubscribe `` | unsubscribes from a mailing list |\n| info [``] | gets information on a list or server |\n| list `` | returns a subscriber list if enabled |\n\nSample HyperMail Script\n-----------------------\n\n #!/usr/bin/perl -w\n\n umask 0000;\n\n $archive_dir = \"/home/minordomo/archive\";\n $output_dir = \"/home/minordomo/archive/html\";\n\n @years = `ls $archive_dir`;\n chomp @years;\n\n foreach $year (@years) {\n\n unless (-e \"$output_dir/$year\") {\n mkdir \"$output_dir/$year\";\n }\n `find $archive_dir/$year -type f | xargs cat | /usr/local/bin/hypermail -x -d $output_dir/$year`;\n }\n", "title": "Working with MinorDomo", "untracked": false, "uri": "/Working_with_MinorDomo", "relativePath": "Working with MinorDomo.md" }