summaryrefslogtreecommitdiff
path: root/net-irc/irker
diff options
context:
space:
mode:
Diffstat (limited to 'net-irc/irker')
-rw-r--r--net-irc/irker/Manifest24
-rw-r--r--net-irc/irker/files/2.17-irkerhook-Remove-file-listing.patch104
-rw-r--r--net-irc/irker/files/2.7-Register-author_name-as-author-instead-of-email-user.patch32
-rw-r--r--net-irc/irker/files/2.7-irkerhook-Remove-file-listing.patch105
-rw-r--r--net-irc/irker/files/irkerd.confd20
-rw-r--r--net-irc/irker/files/irkerd.initd40
-rw-r--r--net-irc/irker/irker-2.11.ebuild51
-rw-r--r--net-irc/irker/irker-2.12.ebuild51
-rw-r--r--net-irc/irker/irker-2.13.ebuild51
-rw-r--r--net-irc/irker/irker-2.15.ebuild57
-rw-r--r--net-irc/irker/irker-2.16.ebuild57
-rw-r--r--net-irc/irker/irker-2.17.ebuild58
-rw-r--r--net-irc/irker/irker-2.18.ebuild55
-rw-r--r--net-irc/irker/irker-2.9.ebuild51
-rw-r--r--net-irc/irker/metadata.xml8
15 files changed, 764 insertions, 0 deletions
diff --git a/net-irc/irker/Manifest b/net-irc/irker/Manifest
new file mode 100644
index 000000000000..91d5c405e169
--- /dev/null
+++ b/net-irc/irker/Manifest
@@ -0,0 +1,24 @@
+AUX 2.17-irkerhook-Remove-file-listing.patch 5956 SHA256 cdbe17d283848c999414742b68b0cc495768248d3d37e28c1c44f87b8fc95466 SHA512 316d79662c8f312dbf8b0255f3ca72929c418d6a10d445c98e5f998d901d6d768ea3c1adc4b6acc04e04adbe0fe551ac4dc8072bf429dcca3623fa299258ebd5 WHIRLPOOL b40f8e8afb79b66a34ddba489a3ebe6a31a2b02f90c7b2bbfae3fe7d4705ddc10701a50bac9c3550c08de6b0992172123f4ef6c48cf57bee136eb7c7c06b9db4
+AUX 2.7-Register-author_name-as-author-instead-of-email-user.patch 1637 SHA256 c742b823b0a14452604d63b6ad5a4f5490f6c923641ddda1ec46fc714a37fed4 SHA512 e72636b7be72d1f896afded5dd566c9876854dc41b1bce3fb9d84e47ac8267a52bc15e315a268f95bb747231178698d59d9cc9136e19619781261049404cfb10 WHIRLPOOL a27111384b551daaad88d44441686d6ed939b6e70bdf20509bd699580f970c28b1b046294590c15c0affcf6d68e034be81ee397c0b48b833ff89249ef487fd3a
+AUX 2.7-irkerhook-Remove-file-listing.patch 6023 SHA256 97ff5bbdfb91dd0c07f339e248fa67acc030502d855784dff0f1b9aff6da6a1e SHA512 a8ecca687b356280581f04f28879044a6c36c3819743312f1e14fb11ce2f83a859eb1fb5fe804640adf969578f6575ce774b4df665ed48721eb0face63ea212f WHIRLPOOL 862b9f2b4a35be9b9f92f07861656c8e4a33d602b76229e95473cbc87dad849eb2db4eb043d25dab7dfa41cc549a667e41f2ea8fc9192985ce2887b3303fd791
+AUX irkerd.confd 474 SHA256 ae185817636a5537514d6269eb273602a3043e963ea5d4f2f83f5d3438c8fa2b SHA512 62e2242cbacd6ed35419b6ef78b969602c2c091e0500bf00d989444d96551087a4eef80ec5b70b5a8f88ecfebb633eb628f7912678862fde8ce7bddb75c87010 WHIRLPOOL 6089ed013d01fa611871fce3f82569ca9d7e7d9069e2aa89817f6732dd2edda4f2d8ba9462a8195ec896bbc6d2df2770fdd476212e554c012fe0fb78a8e72886
+AUX irkerd.initd 1125 SHA256 ce46dff7893f942db2c9fc48afb416a34d269231f8715ba3985a2ae903748061 SHA512 c22838ef63cd2165af958724b4306a260018104224969e612b7175d63619f12a18908c155e94210030f0ada6dcedaabaee6eb0690bd6e327a65ee9934b8d4368 WHIRLPOOL 65c03b8d28b710afdc3acfb25bfa214735f339691f43f89d04a0a3dbb120e2930118c3769662f89e6d441c069ddb5b00b332d7e11df0b5269166e68af1afa4d6
+DIST irker-2.11.tar.gz 41504 SHA256 f7fa5b6020089c7fcb96429c2ce8621ccd9f1ebd14e112c5388b5701201802ab SHA512 b95824f8a68103f7094b13044263e422e98efef163425d88217a7c3f89ef83bf8c4116055b34f92d86ce1641f9c74215a4488c084eba95c56f8cf95fc8067e9b WHIRLPOOL 71d95d32e49b718d59b6a7e63ac267d1cc244281bd557f7914da9292aa0cef4049433a0135637d2bd95ce076128f4b22ac89f4c1148e41d156e6ded785e111cd
+DIST irker-2.12.tar.gz 41693 SHA256 cf76cc289e54c4d0d745e73a2cd9b8d0e40651890f9374220229f59fb220d5a5 SHA512 73606deb3f2b96d72501e876dd05f146e62298fa1f7a051c0f831f0db9fc9554f991b1d645c17ccb9032c7da287c142eedf69b262cf3445ae6b0937a24a5bdb4 WHIRLPOOL b33b395888be786e43340665bdc8067e06d412af0eb516cbb64c384b6f8d7d8883a43bb3e7e3a3516d8afd800ffdb47a9b66eb25fe060922104baedeb5c754f4
+DIST irker-2.13.tar.gz 42733 SHA256 12e8d28f682c6e0bc66d33e8ec69b90db30edef4520ab2ffb26e3b4ff49609c4 SHA512 5aa86354b5f3dabd7e2b46c62df4298b3bc675757b71ee03e2068d9ad14dc35127fb4076ef819ddd0ae84d82937c540516ed77ab5f1177af6dc7381df56af3ac WHIRLPOOL 1cd1da51d5d5834ccdda295833fef20edc4bcae6706b58fdb0fbc1a986e02401c777e8a229b3b074826060554713803201d5fce87878ce6811df7e6f6e1ef52e
+DIST irker-2.15.tar.gz 43765 SHA256 b4055ae0eb39140481a2b637a64b9d49df1d615f687f6fe05d64b6048e7739fb SHA512 94f4bb33a320f4284d03e75c7090ea4714d30d879e1abbf757c3e6eff8898ca5664f718c6ab2f35cae8377c348d41bc9100832b8a70f1b9f1a03c6f7487c2bfe WHIRLPOOL 15cd397c114f3ef44a2ecc04ae3e511328068c753ac5ff45f0e9bd550732a0bdcd4de181f2eb50ee718130cbb1d9c7dc9ecab2699e589e8b755be4084c280308
+DIST irker-2.16.tar.gz 43824 SHA256 3203bdf765fdf70ec9369fce15f52910676f76f1c1714ade3a0411c46f7b38b7 SHA512 6a58938e1d458ad9183d750b4f6d1a4827fffd85caf7c0215c2fa1a9ef5692570c5181ade28f59701bef7398fdc0cfa760fe70d9432b7e54dc7fa663a558fed4 WHIRLPOOL a5de277a01bcd79d7d5951406bacb0346c288860d1265ce99271b6d124bc7bf05e651a9a0ad2f78ddb158061aea142c3579a4d9d4e4944197a72d3f762f73486
+DIST irker-2.17.tar.gz 44139 SHA256 71150b019345c4963d7b94aa38e173c070939ec45360e9ba42a24d9cb25bb2d4 SHA512 030b45c1d64e3c3ebd89aabf99e86d4f3824c8b749ecca02447c0aa1248d928b9c640c3b65ca22f1412d9a9b0609157f7708323234f559111097ee6aa67abac0 WHIRLPOOL f2ff6035ab3080508bc36ccc98b2662d8f63a976c931e5d3ad4a61eb4605dfc10916b98fc39ae8b7afecef8e8f0d2cd132c993a7ab9e0173dfbde4cda91c1312
+DIST irker-2.18.tar.gz 44284 SHA256 faa8bd06fc5e54274e83a0d451840a9520c97b749dcfd460bca01610ef0a2afe SHA512 215f0ab3be03b615f2bb24e04a5e5f6688634c4fb994b5384106b7f3eae62967ac45b2a14d08eee8dbed886dbb0578e077fa19597db599ea9562a67797f75606 WHIRLPOOL 6bd37ace45fcb2f17ecc51ade1a9e67588ebcd99545e74f67cfe5ec0d02d9eb513ac80c4efdbf795932f6fffa6fae38fd93d855373430a12619f8c3f48663bc1
+DIST irker-2.9.tar.gz 41050 SHA256 1c743a86275e8bf91f133b70943a1296d960e2dcc8c5e8dd894bc9a3c9a824b5 SHA512 bdb632414c87ebc3f0d480605a29823d9259defe63a6c6de8f5d1876c13f5a4ab90ef7956a83f62aedf08f17494be7a67bc414e2e30101608f565afd115c5c0f WHIRLPOOL d1c76f1bcc329b4720a823714b1bb6aae81af5913f627474f5b938ac54e09da22f3fbb58f89d79dba0f4833e3a47efeb8f13d2dfffd7a8a2f97c49cf8db200cd
+EBUILD irker-2.11.ebuild 1251 SHA256 9116efaf640347c23676f924e69f7feb8a7db16e2c6ef0a3fb9e77b3f968e56d SHA512 ad2750d93a565c575657afcf47424af5ecf8719f53748c2e6abbf4bcdf81790e0f67598b5f448863ee0c324ea61a1ec1db471b565026aca94bb8d929967a553d WHIRLPOOL 88bcd26d7ce9b11b062d1124b309f199fe7430069b52cd977360f550770ea9a39d4dadd83c531325a3fa7c3b6a7fa7faa5d9240a5ad06a4e308a8df2684b1d3d
+EBUILD irker-2.12.ebuild 1251 SHA256 9116efaf640347c23676f924e69f7feb8a7db16e2c6ef0a3fb9e77b3f968e56d SHA512 ad2750d93a565c575657afcf47424af5ecf8719f53748c2e6abbf4bcdf81790e0f67598b5f448863ee0c324ea61a1ec1db471b565026aca94bb8d929967a553d WHIRLPOOL 88bcd26d7ce9b11b062d1124b309f199fe7430069b52cd977360f550770ea9a39d4dadd83c531325a3fa7c3b6a7fa7faa5d9240a5ad06a4e308a8df2684b1d3d
+EBUILD irker-2.13.ebuild 1251 SHA256 9116efaf640347c23676f924e69f7feb8a7db16e2c6ef0a3fb9e77b3f968e56d SHA512 ad2750d93a565c575657afcf47424af5ecf8719f53748c2e6abbf4bcdf81790e0f67598b5f448863ee0c324ea61a1ec1db471b565026aca94bb8d929967a553d WHIRLPOOL 88bcd26d7ce9b11b062d1124b309f199fe7430069b52cd977360f550770ea9a39d4dadd83c531325a3fa7c3b6a7fa7faa5d9240a5ad06a4e308a8df2684b1d3d
+EBUILD irker-2.15.ebuild 1417 SHA256 77a51535d6237bb5167ec1b1e1f8cf7bd33e68c8ec6edc8bb9c2957b7463e3fa SHA512 9618bcb3630c42443bfdd5dc1143bce97b7145d66fd75cae92a5e6379886e509e934a5ccbfd9ba04cd3494cef25d353629f378f4104ffe66b308980ba7cef265 WHIRLPOOL a6eb7107135e4430265de54449d645d716ec78d97dcbd04969f3533c5458b4ec58afc3148ea11f54aeb0e40dc48e1bfef06bc7c465f5a910b0f0589f836c0df5
+EBUILD irker-2.16.ebuild 1428 SHA256 3c6e248420c88f06318e4cd1ec6c2db508961811b40fdb7e1ee5a013b7da0156 SHA512 20e3d44eae5179f03fe1ca8fd71cd0bac431cf2a41de025e903632e2b8ce816ea55fda83b48ac2aab03de309887c78a68cec43dc1f9b8d07362553dcedf9122f WHIRLPOOL bb9781f05ab1dd950dd4ce3ffbc6e0b6204cbe37a27fab98c4f5ca0581b10d7a76575f4822e90ebb47926ef2601f287bb3ba130899be55707e9035fcf519773a
+EBUILD irker-2.17.ebuild 1480 SHA256 bb6ea87fc07483ddc36d3ae15cc6050830f148ae32d76d7bc09277a0c450e718 SHA512 ca9901fce272f4ee3957170e759031c3b7625c628539b7ec4f8c2dad402b63521afca7174e9c0bec0b5822a0fbf0da425c4b7616cffad1f68c729649406b7183 WHIRLPOOL 52e864c741558745375d1b386c5cf57448c7a05aa85e18896f345f0365801560172b74c614c583f15802566ecdad8febefc016b16fadfa3cb241876919a137cb
+EBUILD irker-2.18.ebuild 1277 SHA256 527b936cf3425f44dccd5ed6e7c0bef8e961e6c5b239e6bcdd7df07820c34952 SHA512 23b6117fbe84aa87cf95a6a0732c8c3504a7c8557af395ce5232dba859fd92902208135e06fe4142fbad94cb1229290f128c1c568ead6e4e3ae0cd84e6dd85bf WHIRLPOOL c3a86c86225b43adc9ddff2ec7112c3f7f236c772a1b4b234f0531a7b7176b8ab0dccc1da0f77b7f7b13834123175bd68aed61fc5c23248f4fd5e333457de1a1
+EBUILD irker-2.9.ebuild 1251 SHA256 9116efaf640347c23676f924e69f7feb8a7db16e2c6ef0a3fb9e77b3f968e56d SHA512 ad2750d93a565c575657afcf47424af5ecf8719f53748c2e6abbf4bcdf81790e0f67598b5f448863ee0c324ea61a1ec1db471b565026aca94bb8d929967a553d WHIRLPOOL 88bcd26d7ce9b11b062d1124b309f199fe7430069b52cd977360f550770ea9a39d4dadd83c531325a3fa7c3b6a7fa7faa5d9240a5ad06a4e308a8df2684b1d3d
+MISC ChangeLog 6725 SHA256 3f71941b00bb1df96515121975277f0abec4eb132edb50bab0fc7318f3989f34 SHA512 0c2b7943b3a8ad0bc6f4e6f3094496e7483fed00e52f2a100e618571a37ed729f88a91fbe06936442f40cef81386928c68d1c32f662dee73bb4ef5d66891866a WHIRLPOOL d1aea9adda807fb85b1e315ca966656834fcc350bbeeece167848fef6c6212e4d91e672fd559df386fd60df3e0a5de1b1e8958d88955b9a96f1f0594b97e2a29
+MISC ChangeLog-2015 3061 SHA256 a69f2c1c8c84097ac6fdbe333e63fb5f998c909c511e6c6a9e4a3b93aa69c56b SHA512 ce29b4667a0513eeb1b0e21ea43932b5f91009916da910e4dfb1feaa307a50d0cd2f1eea255badfe49bf3c89650cfa1144ada3d3d603ede0ba2652ef6c8bddbf WHIRLPOOL 15fe73966343d95f3e33f1a14d9221eb4f692cba52a4a28caec96084de3e1e826af73e2f8b7fff505f389b1c225aa2ffdadf51211195b72545a6dc7dc94f28a2
+MISC metadata.xml 247 SHA256 0deec0776f26fb762fdf7711f4589b14f52a2456436ef557eec62a2cf2fb2bb7 SHA512 29cf52c16b0cce69899d9c2da8acd9144b7d760442aa323b854dceadb42459e009545193b1df7911ac2241b59f4819b4a6bb1d206d6f57953f770031433bb6b7 WHIRLPOOL a135fa622e99d3dcdb432bc6b3c366076b3d86b4bfd9a76c852d781b8e9152541c7e7a2c7c6d6a3c4d2200dce792847a08166aaf7c17c22b6299dfe868234dec
diff --git a/net-irc/irker/files/2.17-irkerhook-Remove-file-listing.patch b/net-irc/irker/files/2.17-irkerhook-Remove-file-listing.patch
new file mode 100644
index 000000000000..356bc9ae264f
--- /dev/null
+++ b/net-irc/irker/files/2.17-irkerhook-Remove-file-listing.patch
@@ -0,0 +1,104 @@
+From a5fca5ebbede155329e44fd4b4a4268c0c86ff3f Mon Sep 17 00:00:00 2001
+From: Bertrand Jacquin <bertrand@jacquin.bzh>
+Date: Mon, 7 Oct 2013 13:33:30 +0200
+Subject: [PATCH 2/2] irkerhook: Remove file listing
+
+---
+ irkerhook.py | 28 +++-------------------------
+ 1 file changed, 3 insertions(+), 25 deletions(-)
+
+diff --git a/irkerhook.py b/irkerhook.py
+index 18c9b01..0ba6834 100755
+--- a/irkerhook.py
++++ b/irkerhook.py
+@@ -66,7 +66,6 @@ class Commit:
+ self.rev = None
+ self.mail = None
+ self.author = None
+- self.files = None
+ self.logmsg = None
+ self.url = None
+ self.author_date = None
+@@ -237,7 +236,7 @@ class GitExtractor(GenericExtractor):
+ self.channels = do("git config --get irker.channels")
+ self.email = do("git config --get irker.email")
+ self.tcp = do("git config --bool --get irker.tcp")
+- self.template = '%(bold)s%(project)s:%(reset)s %(green)s%(author)s%(reset)s %(repo)s:%(yellow)s%(branch)s%(reset)s * %(bold)s%(rev)s%(reset)s / %(bold)s%(files)s%(reset)s: %(logmsg)s %(brown)s%(url)s%(reset)s'
++ self.template = '%(bold)s%(project)s:%(reset)s %(green)s%(author)s%(reset)s %(repo)s:%(yellow)s%(branch)s%(reset)s * %(bold)s%(rev)s%(reset)s: %(logmsg)s %(brown)s%(url)s%(reset)s'
+ self.tinyifier = do("git config --get irker.tinyifier") or default_tinyifier
+ self.color = do("git config --get irker.color")
+ self.urlprefix = do("git config --get irker.urlprefix") or "gitweb"
+@@ -286,9 +285,6 @@ class GitExtractor(GenericExtractor):
+ if self.urlprefix in ('gitweb', 'cgit'):
+ # Also truncate the commit used for the announced urls
+ commit.commit = commit.rev
+- # Extract the meta-information for the commit
+- commit.files = do("git diff-tree -r --name-only " + shellquote(commit.commit))
+- commit.files = " ".join(commit.files.strip().split("\n")[1:])
+ # Design choice: for git we ship only the first message line, which is
+ # conventionally supposed to be a summary of the commit. Under
+ # other VCSes a different choice may be appropriate.
+@@ -309,7 +305,7 @@ class SvnExtractor(GenericExtractor):
+ if tok.startswith("--repository="):
+ self.repository = tok[13:]
+ self.project = os.path.basename(self.repository)
+- self.template = '%(bold)s%(project)s%(reset)s: %(green)s%(author)s%(reset)s %(repo)s * %(bold)s%(rev)s%(reset)s / %(bold)s%(files)s%(reset)s: %(logmsg)s %(brown)s%(url)s%(reset)s'
++ self.template = '%(bold)s%(project)s%(reset)s: %(green)s%(author)s%(reset)s %(repo)s * %(bold)s%(rev)s%(reset)s: %(logmsg)s %(brown)s%(url)s%(reset)s'
+ self.urlprefix = "viewcvs"
+ self.load_preferences(os.path.join(self.repository, "irker.conf"))
+ self.do_overrides()
+@@ -323,7 +319,6 @@ class SvnExtractor(GenericExtractor):
+ commit.rev = "r%s" % self.id
+ commit.author = self.svnlook("author")
+ commit.commit_date = self.svnlook("date").partition('(')[0]
+- commit.files = self.svnlook("dirs-changed").strip().replace("\n", " ")
+ commit.logmsg = self.svnlook("log").strip()
+ return commit
+ def svnlook(self, info):
+@@ -367,7 +362,7 @@ class HgExtractor(GenericExtractor):
+ self.channels = ui.config('irker', 'channels')
+ self.email = ui.config('irker', 'email')
+ self.tcp = str(ui.configbool('irker', 'tcp')) # converted to bool again in do_overrides
+- self.template = '%(bold)s%(project)s:%(reset)s %(green)s%(author)s%(reset)s %(repo)s:%(yellow)s%(branch)s%(reset)s * %(bold)s%(rev)s%(reset)s / %(bold)s%(files)s%(reset)s: %(logmsg)s %(brown)s%(url)s%(reset)s'
++ self.template = '%(bold)s%(project)s:%(reset)s %(green)s%(author)s%(reset)s %(repo)s:%(yellow)s%(branch)s%(reset)s * %(bold)s%(rev)s%(reset)s: %(logmsg)s %(brown)s%(url)s%(reset)s'
+ self.tinyifier = ui.config('irker', 'tinyifier') or default_tinyifier
+ self.color = ui.config('irker', 'color')
+ self.urlprefix = (ui.config('irker', 'urlprefix') or
+@@ -397,9 +392,6 @@ class HgExtractor(GenericExtractor):
+ commit.author_date = \
+ datetime.datetime.fromtimestamp(ctx.date()[0]).strftime('%Y-%m-%d %H:%M:%S')
+ commit.logmsg = ctx.description()
+- # Extract changed files from status against first parent
+- st = self.repository.status(ctx.p1().node(), ctx.node())
+- commit.files = ' '.join(st[0] + st[1] + st[2])
+ return commit
+
+ def hg_hook(ui, repo, **kwds):
+@@ -440,17 +432,6 @@ def ship(extractor, commit, debug):
+ sys.stderr.write("irkerhook.py: could not decode JSON: %s\n" % data)
+ raise SystemExit(1)
+
+- # Rewrite the file list if too long. The objective here is only
+- # to be easier on the eyes.
+- if extractor.cialike \
+- and extractor.cialike.lower() != "none" \
+- and len(metadata.files) > int(extractor.cialike):
+- files = metadata.files.split()
+- dirs = set([d.rpartition('/')[0] for d in files])
+- if len(dirs) == 1:
+- metadata.files = "(%s files)" % (len(files),)
+- else:
+- metadata.files = "(%s files in %s dirs)" % (len(files), len(dirs))
+ # Message reduction. The assumption here is that IRC can't handle
+ # lines more than 510 characters long. If we exceed that length, we
+ # try knocking out the file list, on the theory that for notification
+@@ -458,9 +439,6 @@ def ship(extractor, commit, debug):
+ # there's nothing much can be done other than ship it expecting the IRC
+ # server to truncate.
+ privmsg = unicode(metadata)
+- if len(privmsg) > 510:
+- metadata.files = ""
+- privmsg = unicode(metadata)
+
+ # Anti-spamming guard. It's deliberate that we get maxchannels not from
+ # the user-filtered metadata but from the extractor data - means repo
diff --git a/net-irc/irker/files/2.7-Register-author_name-as-author-instead-of-email-user.patch b/net-irc/irker/files/2.7-Register-author_name-as-author-instead-of-email-user.patch
new file mode 100644
index 000000000000..a19da1f4a48d
--- /dev/null
+++ b/net-irc/irker/files/2.7-Register-author_name-as-author-instead-of-email-user.patch
@@ -0,0 +1,32 @@
+From 108e898c600cf7a80a3d01a83a270c7579460b42 Mon Sep 17 00:00:00 2001
+From: Bertrand Jacquin <beber@meleeweb.net>
+Date: Mon, 23 Sep 2013 23:10:23 +0200
+Subject: [PATCH 1/3] Register author_name as author instead of email userpart
+
+Signed-off-by: Bertrand Jacquin <beber@meleeweb.net>
+---
+ irkerhook.py | 11 ++---------
+ 1 file changed, 2 insertions(+), 9 deletions(-)
+
+diff --git a/irkerhook.py b/irkerhook.py
+index 5f15032..36a875e 100755
+--- a/irkerhook.py
++++ b/irkerhook.py
+@@ -275,15 +275,8 @@ class GitExtractor(GenericExtractor):
+ # Design choice: for git we ship only the first message line, which is
+ # conventionally supposed to be a summary of the commit. Under
+ # other VCSes a different choice may be appropriate.
+- commit.author_name, commit.mail, commit.logmsg = \
+- do("git log -1 '--pretty=format:%an%n%ae%n%s' " + shellquote(commit.commit)).split("\n")
+- # This discards the part of the author's address after @.
+- # Might be be nice to ship the full email address, if not
+- # for spammers' address harvesters - getting this wrong
+- # would make the freenode #commits channel into harvester heaven.
+- commit.author = commit.mail.split("@")[0]
+- commit.author_date, commit.commit_date = \
+- do("git log -1 '--pretty=format:%ai|%ci' " + shellquote(commit.commit)).split("|")
++ commit.logmsg = do("git log -1 '--pretty=format:%s' " + shellquote(commit.commit))
++ commit.author = do("git log -1 '--pretty=format:%an' " + shellquote(commit.commit))
+ return commit
+
+ class SvnExtractor(GenericExtractor):
diff --git a/net-irc/irker/files/2.7-irkerhook-Remove-file-listing.patch b/net-irc/irker/files/2.7-irkerhook-Remove-file-listing.patch
new file mode 100644
index 000000000000..cbbb38c22ea6
--- /dev/null
+++ b/net-irc/irker/files/2.7-irkerhook-Remove-file-listing.patch
@@ -0,0 +1,105 @@
+From 82376d74107035950ef4181fdc889ae9409378b6 Mon Sep 17 00:00:00 2001
+From: Bertrand Jacquin <beber@meleeweb.net>
+Date: Mon, 7 Oct 2013 13:33:30 +0200
+Subject: [PATCH 2/3] irkerhook: Remove file listing
+
+Signed-off-by: Bertrand Jacquin <beber@meleeweb.net>
+---
+ irkerhook.py | 34 +++-------------------------------
+ 1 file changed, 3 insertions(+), 31 deletions(-)
+
+diff --git a/irkerhook.py b/irkerhook.py
+index 36a875e..f2f82cf 100755
+--- a/irkerhook.py
++++ b/irkerhook.py
+@@ -57,7 +57,6 @@ class Commit:
+ self.rev = None
+ self.mail = None
+ self.author = None
+- self.files = None
+ self.logmsg = None
+ self.url = None
+ self.author_date = None
+@@ -224,7 +223,7 @@ class GitExtractor(GenericExtractor):
+ self.channels = do("git config --get irker.channels")
+ self.email = do("git config --get irker.email")
+ self.tcp = do("git config --bool --get irker.tcp")
+- self.template = '%(bold)s%(project)s:%(reset)s %(green)s%(author)s%(reset)s %(repo)s:%(yellow)s%(branch)s%(reset)s * %(bold)s%(rev)s%(reset)s / %(bold)s%(files)s%(reset)s: %(logmsg)s %(brown)s%(url)s%(reset)s'
++ self.template = '%(bold)s%(project)s:%(reset)s %(green)s%(author)s%(reset)s %(repo)s:%(yellow)s%(branch)s%(reset)s * %(bold)s%(rev)s%(reset)s: %(logmsg)s %(brown)s%(url)s%(reset)s'
+ self.tinyifier = do("git config --get irker.tinyifier") or default_tinyifier
+ self.color = do("git config --get irker.color")
+ self.urlprefix = do("git config --get irker.urlprefix") or "gitweb"
+@@ -269,9 +268,6 @@ class GitExtractor(GenericExtractor):
+ commit.rev = do("git describe %s 2>/dev/null" % shellquote(commit.commit))
+ if not commit.rev:
+ commit.rev = commit.commit[:12]
+- # Extract the meta-information for the commit
+- commit.files = do("git diff-tree -r --name-only " + shellquote(commit.commit))
+- commit.files = " ".join(commit.files.strip().split("\n")[1:])
+ # Design choice: for git we ship only the first message line, which is
+ # conventionally supposed to be a summary of the commit. Under
+ # other VCSes a different choice may be appropriate.
+@@ -292,7 +288,7 @@ class SvnExtractor(GenericExtractor):
+ if tok.startswith("--repository="):
+ self.repository = tok[13:]
+ self.project = os.path.basename(self.repository)
+- self.template = '%(bold)s%(project)s%(reset)s: %(green)s%(author)s%(reset)s %(repo)s * %(bold)s%(rev)s%(reset)s / %(bold)s%(files)s%(reset)s: %(logmsg)s %(brown)s%(url)s%(reset)s'
++ self.template = '%(bold)s%(project)s%(reset)s: %(green)s%(author)s%(reset)s %(repo)s * %(bold)s%(rev)s%(reset)s: %(logmsg)s %(brown)s%(url)s%(reset)s'
+ self.urlprefix = "viewcvs"
+ self.load_preferences(os.path.join(self.repository, "irker.conf"))
+ self.do_overrides()
+@@ -306,7 +302,6 @@ class SvnExtractor(GenericExtractor):
+ commit.rev = "r%s" % self.id
+ commit.author = self.svnlook("author")
+ commit.commit_date = self.svnlook("date").partition('(')[0]
+- commit.files = self.svnlook("dirs-changed").strip().replace("\n", " ")
+ commit.logmsg = self.svnlook("log").strip()
+ return commit
+ def svnlook(self, info):
+@@ -350,7 +345,7 @@ class HgExtractor(GenericExtractor):
+ self.channels = ui.config('irker', 'channels')
+ self.email = ui.config('irker', 'email')
+ self.tcp = str(ui.configbool('irker', 'tcp')) # converted to bool again in do_overrides
+- self.template = '%(bold)s%(project)s:%(reset)s %(green)s%(author)s%(reset)s %(repo)s:%(yellow)s%(branch)s%(reset)s * %(bold)s%(rev)s%(reset)s / %(bold)s%(files)s%(reset)s: %(logmsg)s %(brown)s%(url)s%(reset)s'
++ self.template = '%(bold)s%(project)s:%(reset)s %(green)s%(author)s%(reset)s %(repo)s:%(yellow)s%(branch)s%(reset)s * %(bold)s%(rev)s%(reset)s: %(logmsg)s %(brown)s%(url)s%(reset)s'
+ self.tinyifier = ui.config('irker', 'tinyifier') or default_tinyifier
+ self.color = ui.config('irker', 'color')
+ self.urlprefix = (ui.config('irker', 'urlprefix') or
+@@ -380,9 +375,6 @@ class HgExtractor(GenericExtractor):
+ commit.author_date = \
+ datetime.datetime.fromtimestamp(ctx.date()[0]).strftime('%Y-%m-%d %H:%M:%S')
+ commit.logmsg = ctx.description()
+- # Extract changed files from status against first parent
+- st = self.repository.status(ctx.p1().node(), ctx.node())
+- commit.files = ' '.join(st[0] + st[1] + st[2])
+ return commit
+
+ def hg_hook(ui, repo, **kwds):
+@@ -423,27 +415,7 @@ def ship(extractor, commit, debug):
+ sys.stderr.write("irkerhook.py: could not decode JSON: %s\n" % data)
+ raise SystemExit, 1
+
+- # Rewrite the file list if too long. The objective here is only
+- # to be easier on the eyes.
+- if extractor.cialike \
+- and extractor.cialike.lower() != "none" \
+- and len(metadata.files) > int(extractor.cialike):
+- files = metadata.files.split()
+- dirs = set([d.rpartition('/')[0] for d in files])
+- if len(dirs) == 1:
+- metadata.files = "(%s files)" % (len(files),)
+- else:
+- metadata.files = "(%s files in %s dirs)" % (len(files), len(dirs))
+- # Message reduction. The assumption here is that IRC can't handle
+- # lines more than 510 characters long. If we exceed that length, we
+- # try knocking out the file list, on the theory that for notification
+- # purposes the commit text is more important. If it's still too long
+- # there's nothing much can be done other than ship it expecting the IRC
+- # server to truncate.
+ privmsg = unicode(metadata)
+- if len(privmsg) > 510:
+- metadata.files = ""
+- privmsg = unicode(metadata)
+
+ # Anti-spamming guard. It's deliberate that we get maxchannels not from
+ # the user-filtered metadata but from the extractor data - means repo
diff --git a/net-irc/irker/files/irkerd.confd b/net-irc/irker/files/irkerd.confd
new file mode 100644
index 000000000000..42ae7323612a
--- /dev/null
+++ b/net-irc/irker/files/irkerd.confd
@@ -0,0 +1,20 @@
+# /etc/conf.d/irkerd: config file for /etc/init.d/irkerd
+
+# Nick-Serv login
+# IRKERD_NICK=""
+
+# Nick-Server password
+# IRKERD_PASSWORD=""
+
+# Log file, if none syslog is used (facility daemon)
+# IRKERD_LOGFILE=""
+
+# Debug Level (critical, error, warning, info, debug)
+# IRKERD_LOGLEVEL=""
+
+# To run an anonymous irkerd safely. It should not be able
+# to write to anywhere on your system
+# IRKERD_USER=""
+
+# see man pages for irkerd for valid cmdline options
+# IRKERD_OPTS=""
diff --git a/net-irc/irker/files/irkerd.initd b/net-irc/irker/files/irkerd.initd
new file mode 100644
index 000000000000..6417d45ebf8e
--- /dev/null
+++ b/net-irc/irker/files/irkerd.initd
@@ -0,0 +1,40 @@
+#!/sbin/openrc-run
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+: ${pidfile:=/run/${RC_SVCNAME}.pid}
+
+: ${IRKERD_NICK:=}
+: ${IRKERD_PASSWORD:=}
+: ${IRKERD_USER:=nobody}
+
+depend() {
+ use net
+}
+
+start () {
+ if [[ ${IRKERD_LOGFILE} ]] ; then
+ checkpath -f \
+ -o "${IRKERD_USER}" \
+ "${IRKERD_LOGFILE}" \
+ || return 1
+ fi
+
+ if [[ -z "${IRKERD_USER}" ]] ; then
+ die "IRKERD_USER is mandatory"
+ fi
+
+ [[ -n "${IRKERD_LOGLEVEL}" ]] && IRKERD_OPTS="${IRKERD_OPTS} -d ${IRKERD_LOGLEVEL}"
+ [[ -n "${IRKERD_LOGFILE}" ]] && IRKERD_OPTS="${IRKERD_OPTS} -l ${IRKERD_LOGFILE}"
+ [[ -n "${IRKERD_NICK}" ]] && IRKERD_OPTS="${IRKERD_OPTS} -n ${IRKERD_NICK}"
+ [[ -n "${IRKERD_PASSWORD}" ]] && IRKERD_OPTS="${IRKERD_OPTS} -p ${IRKERD_PASSWORD}"
+
+ ebegin "Starting ${RC_SVCNAME}"
+ start-stop-daemon --start \
+ --quiet --background \
+ --user "${IRKERD_USER}" \
+ --make-pidfile --pidfile "${pidfile}" \
+ --exec /usr/bin/irkerd \
+ -- ${IRKERD_OPTS} < /dev/null
+ eend $?
+}
diff --git a/net-irc/irker/irker-2.11.ebuild b/net-irc/irker/irker-2.11.ebuild
new file mode 100644
index 000000000000..9b6fdbbae2e1
--- /dev/null
+++ b/net-irc/irker/irker-2.11.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="ssl"
+
+inherit python-single-r1 eutils
+
+DESCRIPTION="Submission tools for IRC notifications"
+HOMEPAGE="http://www.catb.org/esr/irker/"
+SRC_URI="http://www.catb.org/esr/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto"
+
+src_prepare() {
+ # https://gitorious.org/irker/irker/merge_requests/25
+ epatch "${FILESDIR}/2.7-Register-author_name-as-author-instead-of-email-user.patch"
+
+ epatch "${FILESDIR}/2.7-irkerhook-Remove-file-listing.patch"
+
+ # Prefix support
+ sed -i -e "/^ExecStart=/ s:=/:=${EROOT}:" irkerd.service \
+ || die "sed failed"
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+
+ python_doscript "${ED}/usr/bin/irkerd"
+ # Not installed with the default Makefile
+ python_doscript irk irkerhook.py
+
+ newinitd "${FILESDIR}/irkerd.initd" irkerd
+ newconfd "${FILESDIR}/irkerd.confd" irkerd
+
+ dodoc NEWS README hacking.txt security.txt
+ dohtml irkerd.html irkerhook.html
+
+ docinto examples
+ dodoc filter-example.py filter-test.py
+}
diff --git a/net-irc/irker/irker-2.12.ebuild b/net-irc/irker/irker-2.12.ebuild
new file mode 100644
index 000000000000..9b6fdbbae2e1
--- /dev/null
+++ b/net-irc/irker/irker-2.12.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="ssl"
+
+inherit python-single-r1 eutils
+
+DESCRIPTION="Submission tools for IRC notifications"
+HOMEPAGE="http://www.catb.org/esr/irker/"
+SRC_URI="http://www.catb.org/esr/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto"
+
+src_prepare() {
+ # https://gitorious.org/irker/irker/merge_requests/25
+ epatch "${FILESDIR}/2.7-Register-author_name-as-author-instead-of-email-user.patch"
+
+ epatch "${FILESDIR}/2.7-irkerhook-Remove-file-listing.patch"
+
+ # Prefix support
+ sed -i -e "/^ExecStart=/ s:=/:=${EROOT}:" irkerd.service \
+ || die "sed failed"
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+
+ python_doscript "${ED}/usr/bin/irkerd"
+ # Not installed with the default Makefile
+ python_doscript irk irkerhook.py
+
+ newinitd "${FILESDIR}/irkerd.initd" irkerd
+ newconfd "${FILESDIR}/irkerd.confd" irkerd
+
+ dodoc NEWS README hacking.txt security.txt
+ dohtml irkerd.html irkerhook.html
+
+ docinto examples
+ dodoc filter-example.py filter-test.py
+}
diff --git a/net-irc/irker/irker-2.13.ebuild b/net-irc/irker/irker-2.13.ebuild
new file mode 100644
index 000000000000..9b6fdbbae2e1
--- /dev/null
+++ b/net-irc/irker/irker-2.13.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="ssl"
+
+inherit python-single-r1 eutils
+
+DESCRIPTION="Submission tools for IRC notifications"
+HOMEPAGE="http://www.catb.org/esr/irker/"
+SRC_URI="http://www.catb.org/esr/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto"
+
+src_prepare() {
+ # https://gitorious.org/irker/irker/merge_requests/25
+ epatch "${FILESDIR}/2.7-Register-author_name-as-author-instead-of-email-user.patch"
+
+ epatch "${FILESDIR}/2.7-irkerhook-Remove-file-listing.patch"
+
+ # Prefix support
+ sed -i -e "/^ExecStart=/ s:=/:=${EROOT}:" irkerd.service \
+ || die "sed failed"
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+
+ python_doscript "${ED}/usr/bin/irkerd"
+ # Not installed with the default Makefile
+ python_doscript irk irkerhook.py
+
+ newinitd "${FILESDIR}/irkerd.initd" irkerd
+ newconfd "${FILESDIR}/irkerd.confd" irkerd
+
+ dodoc NEWS README hacking.txt security.txt
+ dohtml irkerd.html irkerhook.html
+
+ docinto examples
+ dodoc filter-example.py filter-test.py
+}
diff --git a/net-irc/irker/irker-2.15.ebuild b/net-irc/irker/irker-2.15.ebuild
new file mode 100644
index 000000000000..6965033dce31
--- /dev/null
+++ b/net-irc/irker/irker-2.15.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="ssl"
+
+inherit python-single-r1 systemd eutils
+
+DESCRIPTION="Submission tools for IRC notifications"
+HOMEPAGE="http://www.catb.org/esr/irker/"
+SRC_URI="http://www.catb.org/esr/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto"
+
+src_prepare() {
+ # https://gitorious.org/irker/irker/merge_requests/25
+ epatch "${FILESDIR}/2.7-Register-author_name-as-author-instead-of-email-user.patch"
+
+ epatch "${FILESDIR}/2.7-irkerhook-Remove-file-listing.patch"
+
+ # Rely on systemd eclass for systemd service install
+ sed -i -e "/^SYSTEMDSYSTEMUNITDIR/d" Makefile \
+ || die "sed failed"
+
+ # Prefix support
+ sed -i -e "/^ExecStart=/ s:=/:=${EROOT}:" irkerd.service \
+ || die "sed failed"
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+
+ python_doscript "${ED}/usr/bin/irkerd"
+ # Not installed with the default Makefile
+ python_doscript irk irkerhook.py
+
+ newinitd "${FILESDIR}/irkerd.initd" irkerd
+ newconfd "${FILESDIR}/irkerd.confd" irkerd
+
+ systemd_dounit irkerd.service
+
+ dodoc NEWS README hacking.txt security.txt
+ dohtml irkerd.html irkerhook.html
+
+ docinto examples
+ dodoc filter-example.py filter-test.py
+}
diff --git a/net-irc/irker/irker-2.16.ebuild b/net-irc/irker/irker-2.16.ebuild
new file mode 100644
index 000000000000..9171b100f45f
--- /dev/null
+++ b/net-irc/irker/irker-2.16.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+PYTHON_COMPAT=( python{2_7,3_4} )
+PYTHON_REQ_USE="ssl"
+
+inherit python-single-r1 systemd eutils
+
+DESCRIPTION="Submission tools for IRC notifications"
+HOMEPAGE="http://www.catb.org/esr/irker/"
+SRC_URI="http://www.catb.org/esr/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto"
+
+src_prepare() {
+ # https://gitorious.org/irker/irker/merge_requests/25
+ epatch "${FILESDIR}/2.7-Register-author_name-as-author-instead-of-email-user.patch"
+
+ epatch "${FILESDIR}/2.7-irkerhook-Remove-file-listing.patch"
+
+ # Rely on systemd eclass for systemd service install
+ sed -i -e "/^SYSTEMDSYSTEMUNITDIR/d" Makefile \
+ || die "sed failed"
+
+ # Prefix support
+ sed -i -e "/^ExecStart=/ s:=/:=${EROOT}:" irkerd.service \
+ || die "sed failed"
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+
+ python_doscript "${ED}/usr/bin/irkerd"
+ # Not installed with the default Makefile
+ python_doscript irk irkerhook.py
+
+ newinitd "${FILESDIR}/irkerd.initd" irkerd
+ newconfd "${FILESDIR}/irkerd.confd" irkerd
+
+ systemd_dounit irkerd.service
+
+ dodoc NEWS README hacking.txt security.txt
+ dohtml irkerd.html irkerhook.html
+
+ docinto examples
+ dodoc filter-example.py filter-test.py
+}
diff --git a/net-irc/irker/irker-2.17.ebuild b/net-irc/irker/irker-2.17.ebuild
new file mode 100644
index 000000000000..12222762dd6b
--- /dev/null
+++ b/net-irc/irker/irker-2.17.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+PYTHON_COMPAT=( python{2_7,3_4} )
+PYTHON_REQ_USE="ssl"
+
+inherit python-single-r1 systemd eutils
+
+DESCRIPTION="Submission tools for IRC notifications"
+HOMEPAGE="http://www.catb.org/esr/irker/"
+SRC_URI="http://www.catb.org/esr/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="socks5"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto
+ socks5? ( dev-python/PySocks[${PYTHON_USEDEP}] )"
+
+src_prepare() {
+ # https://gitorious.org/irker/irker/merge_requests/25
+ epatch "${FILESDIR}/2.7-Register-author_name-as-author-instead-of-email-user.patch"
+
+ epatch "${FILESDIR}/2.17-irkerhook-Remove-file-listing.patch"
+
+ # Rely on systemd eclass for systemd service install
+ sed -i -e "/^SYSTEMDSYSTEMUNITDIR/d" Makefile \
+ || die "sed failed"
+
+ # Prefix support
+ sed -i -e "/^ExecStart=/ s:=/:=${EROOT}:" irkerd.service \
+ || die "sed failed"
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+
+ python_doscript "${ED}/usr/bin/irkerd"
+ # Not installed with the default Makefile
+ python_doscript irk irkerhook.py
+
+ newinitd "${FILESDIR}/irkerd.initd" irkerd
+ newconfd "${FILESDIR}/irkerd.confd" irkerd
+
+ systemd_dounit irkerd.service
+
+ dodoc NEWS README hacking.txt security.txt
+ dohtml irkerd.html irkerhook.html
+
+ docinto examples
+ dodoc filter-example.py filter-test.py
+}
diff --git a/net-irc/irker/irker-2.18.ebuild b/net-irc/irker/irker-2.18.ebuild
new file mode 100644
index 000000000000..2dae81311ef9
--- /dev/null
+++ b/net-irc/irker/irker-2.18.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python{2_7,3_4,3_5} )
+PYTHON_REQ_USE="ssl"
+
+inherit python-single-r1 systemd
+
+DESCRIPTION="Submission tools for IRC notifications"
+HOMEPAGE="http://www.catb.org/esr/irker/"
+SRC_URI="http://www.catb.org/esr/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="socks5"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto
+ socks5? ( dev-python/PySocks[${PYTHON_USEDEP}] )"
+
+DOCS=( NEWS README hacking.txt security.txt )
+HTML_DOCS=( irkerd.html irkerhook.html )
+
+src_prepare() {
+ default
+
+ # Rely on systemd eclass for systemd service install
+ sed -i -e "/^SYSTEMDSYSTEMUNITDIR/d" Makefile \
+ || die "sed failed"
+
+ # Prefix support
+ sed -i -e "/^ExecStart=/ s:=/:=${EPREFIX}:" irkerd.service \
+ || die "sed failed"
+}
+
+src_install() {
+ default
+
+ python_doscript "${ED%/}/usr/bin/irkerd"
+ # Not installed with the default Makefile
+ python_doscript irk irkerhook.py
+
+ newinitd "${FILESDIR}/irkerd.initd" irkerd
+ newconfd "${FILESDIR}/irkerd.confd" irkerd
+
+ systemd_dounit irkerd.service
+
+ docinto examples
+ dodoc filter-example.py filter-test.py
+}
diff --git a/net-irc/irker/irker-2.9.ebuild b/net-irc/irker/irker-2.9.ebuild
new file mode 100644
index 000000000000..9b6fdbbae2e1
--- /dev/null
+++ b/net-irc/irker/irker-2.9.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE="ssl"
+
+inherit python-single-r1 eutils
+
+DESCRIPTION="Submission tools for IRC notifications"
+HOMEPAGE="http://www.catb.org/esr/irker/"
+SRC_URI="http://www.catb.org/esr/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}"
+DEPEND="${RDEPEND}
+ app-text/docbook-xml-dtd:4.1.2
+ app-text/xmlto"
+
+src_prepare() {
+ # https://gitorious.org/irker/irker/merge_requests/25
+ epatch "${FILESDIR}/2.7-Register-author_name-as-author-instead-of-email-user.patch"
+
+ epatch "${FILESDIR}/2.7-irkerhook-Remove-file-listing.patch"
+
+ # Prefix support
+ sed -i -e "/^ExecStart=/ s:=/:=${EROOT}:" irkerd.service \
+ || die "sed failed"
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+
+ python_doscript "${ED}/usr/bin/irkerd"
+ # Not installed with the default Makefile
+ python_doscript irk irkerhook.py
+
+ newinitd "${FILESDIR}/irkerd.initd" irkerd
+ newconfd "${FILESDIR}/irkerd.confd" irkerd
+
+ dodoc NEWS README hacking.txt security.txt
+ dohtml irkerd.html irkerhook.html
+
+ docinto examples
+ dodoc filter-example.py filter-test.py
+}
diff --git a/net-irc/irker/metadata.xml b/net-irc/irker/metadata.xml
new file mode 100644
index 000000000000..40aa45df2b01
--- /dev/null
+++ b/net-irc/irker/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>patrick@gentoo.org</email>
+ <name>Patrick Lauer</name>
+ </maintainer>
+</pkgmetadata>