diff --git a/trac/versioncontrol/templates/repository_index.html b/trac/versioncontrol/templates/repository_index.html
--- a/trac/versioncontrol/templates/repository_index.html
+++ b/trac/versioncontrol/templates/repository_index.html
@@ -29,7 +29,7 @@
           <td class="change">
             <span class="author" py:if="change">${authorinfo(change.author)}:</span>
             <span class="change" py:choose=""
-                  py:with="chgset_context = context('changeset', change.rev, parent=repos_resource)">
+                  py:with="chgset_context = context('changeset', change.rev, parent=Resource('repository', reponame))">
               <em py:when="err" py:content="err" />
               <py:when test="not change or 'CHANGESET_VIEW' not in perm(chgset_context.resource)">-</py:when>
               <py:when test="wiki_format_messages">
diff --git a/trac/web/chrome.py b/trac/web/chrome.py
--- a/trac/web/chrome.py
+++ b/trac/web/chrome.py
@@ -666,6 +666,7 @@
 
         d.update({
             'context': req and Context.from_request(req) or None,
+            'Resource': Resource,
             'url_of': get_rel_url,
             'abs_url_of': get_abs_url,
             'name_of': partial(get_resource_name, self.env),

