diff --git a/exec/podcast.js b/exec/podcast.js
index f7350081ee7b3e032ad005ade866898b19738bbc..99d31c0d720ced79d0c30a44d0bf56cbc05b4e2b 100644
--- a/exec/podcast.js
+++ b/exec/podcast.js
@@ -62,6 +62,11 @@ if (opts.Description == undefined) {
 	exit(1);
 }
 
+if (opts.FeedURI == undefined) {
+	log("FeedURI undefined in modopts.ini.");
+	exit(1);
+}
+
 if (opts.Link == undefined) {
 	log("Link undefined in modopts.ini.");
 	exit(1);
@@ -115,7 +120,7 @@ for (i = base.first_msg; i <= base.last_msg; i++) {
 }
 
 // TODO: iTunes tags?
-out.write('<?xml version="1.0"?>\n<rss version="2.0">\n\t<channel>\n');
+out.write('<?xml version="1.0"?>\n<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">\n\t<channel>\n');
 out.write('\t\t<title>'+encode_xml(opts.Title)+'</title>\n');
 out.write('\t\t<description>'+encode_xml(opts.Description)+'</description>\n');
 out.write('\t\t<link>'+encode_xml(opts.Link)+'</link>\n');
@@ -147,6 +152,7 @@ add_channel_opt_attribute('Rating');
 // TODO: textInput
 add_channel_opt_attribute('SkipHours');
 add_channel_opt_attribute('SkipDays');
+out.write('\t\t<atom:link href="'+opts.FeedURI+'" rel="self" type="application/rss+xml" />');
 
 for (i=hdrs.length - 1; i >= 0; i--) {
 	body = base.get_msg_body(hdrs[i].number);
@@ -175,7 +181,7 @@ for (i=hdrs.length - 1; i >= 0; i--) {
 	// TODO: category?
 	// TODO: HTML integration required here for <comments> tag.
 	item += '\t\t\t<enclosure url="'+encode_xml(m[2])+'" length="'+item_length+'" type="'+item_type+'" />\n';
-	item += '\t\t\t<guid isPermalink="false">'+encode_xml(hdrs[i].id)+'</guid>\n';
+	item += '\t\t\t<guid isPermaLink="false">'+encode_xml(hdrs[i].id)+'</guid>\n';
 	item += '\t\t\t<pubDate>'+encode_xml((new Date(hdrs[i].when_written_time * 1000)).toUTCString())+'</pubDate>\n';
 	// TODO: source?
 	item += '\t\t</item>\n';