Ticketのメールで行頭に空白がつかないように改造

TracのTicketからのメールは何故か行頭に空白がついていて見づらい&引用とかにも不便なので行頭の空白がつかにように改造してみた

trac/ticket/notification.py
を変更する
(RPMで入れているなら /usr/lib/python2.4/site-packages/trac/ticket/notification.py かな)

diff(universal形式)とると(Trac 0.10.3)

--- notification.py.old    YYYY-MM-DD hh:mm:ss.000000000 +0900
+++ notification.py     YYYY-MM-DD hh:mm:ss.000000000 +0900
@@ -61,8 +61,8 @@
         self.modtime = modtime
         self.newticket = newticket
         self.ticket['description'] = wrap(self.ticket.values.get('description', ''),
-                                          self.COLS, initial_indent=' ',
-                                          subsequent_indent=' ', linesep=CRLF)
+                                          self.COLS, initial_indent='',
+                                          subsequent_indent='', linesep=CRLF)
         self.reporter = ''
         self.owner = ''
         self.hdf.set_unescaped('email.ticket_props', self.format_props())
@@ -84,7 +84,7 @@
                                        change['author'])
                 self.hdf.set_unescaped('ticket.change.comment',
                                        wrap(change['comment'], self.COLS,
-                                            ' ', ' ', CRLF))
+                                            '', '', CRLF))
                 link += '#comment:%s' % str(change.get('cnum', ''))
                 for field, values in change['fields'].iteritems():
                     old = values['old']
@@ -92,7 +92,7 @@
                     pfx = 'ticket.change.%s' % field
                     newv = ''
                     if field == 'description':
-                        new_descr = wrap(new, self.COLS, ' ', ' ', CRLF)
+                        new_descr = wrap(new, self.COLS, '', '', CRLF)
                         old_descr = wrap(old, self.COLS, '> ', '> ', CRLF)
                         old_descr = old_descr.replace(2*CRLF, CRLF + '>' + CRLF)
                         cdescr = CRLF

iptablesでPING他、不要なICMPリクエストを拒否

iptablesを使ってPINGなどを拒否する方法
http://d.hatena.ne.jp/watarin/20070507/1178534020PINGDROP
を書いたけどPING(echo request)以外にもサーバの検出に使われるものがあるので
必要なもののみ通すっていう方針に変えて下記の通り

A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT
A INPUT -p icmp --icmp-type source-quench -j ACCEPT
A INPUT -p icmp --icmp-type redirect -j ACCEPT
A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT
A INPUT -p icmp --icmp-type parameter-problem -j ACCEPT
A INPUT -p icmp --icmp-type any -j DROP

Ticketの日時表示を日時そのものを表示するように改善する

TracのTicketは結構よく出来ているんだけど
Ticket作成時の日時が、「8 hours ago」 みたいに○○前って表示されるのが
非常に見づらくて、いけていないこと限りない。
一応マウスをあわせると日時も出るんだけど、
やっぱりちゃんと日時そのものを表示して欲しい!!
って訳で
「日時そのものを表示。マウスをあわせると○○前が出てくる」
に改造をする。

テンプレートを変更すればOKなのでテンプレートが置いてあるディレクトリ、、、
RPMでいれているなら /usr/share/trac/templates かな?)の
ticket.csを変更するべし
diff(universal形式)とると

--- ticket.cs.old       2007-06-12 16:44:06.000000000 +0900
+++ ticket.cs   2007-06-12 16:47:39.000000000 +0900
@@ -40,9 +40,9 @@
 <div id="searchable">
 <div id="ticket">
  <div class="date">
-  <p title="<?cs var:ticket.opened ?>">Opened <?cs var:ticket.opened_delta ?> ago</p><?cs
+  <p title="<?cs var:ticket.opened_delta ?> ago">Opened: <?cs var:ticket.opened ?></p><?cs
   if:ticket.lastmod ?>
-   <p title="<?cs var:ticket.lastmod ?>">Last modified <?cs var:ticket.lastmod_delta ?> ago</p>
+   <p title="<?cs var:ticket.lastmod_delta ?> ago">Last modified: <?cs var:ticket.lastmod ?></p>
   <?cs /if ?>
  </div>
  <h2 class="summary"><?cs var:ticket.summary ?></h2>

svn diff の出力フォーマットを変更

Subversionで、svn diff するとunifiedフォーマットで出力されるけど
フォーマット変えたいって場合は、、

svn diff --diff-cmd diff -x 「diffコマンドに渡すオプション」

でできる。

私はunifiedフォーマットだと長くてうっとうしいので
svn diff --diff-cmd diff -x --normal
にしてすっきり表示させてる

CVSみたいにcontextフォーマットが好きなら
svn diff --diff-cmd diff -x -c