Roger Dingledine Roger Dingledine update the sponsors page for 2015 7eebbed30 @ 2015-02-08 07:41:18
about update the sponsors page for 2015 2015-02-08 07:41:18
cgi-bin first cut of the new, shiny tor website as wml. 2010-07-09 03:55:22
css remove Announcements in favor of rss feed integrated blog posts section. 2014-09-27 04:56:58
docs Fixes osx arch tag in TorBrowser's name. 2015-02-06 09:26:21
donate drop tor store, move bitcoins to after dwolla in both the list and the form. 2014-04-21 04:00:11
download youtube no longer breaks when used without flash 2015-01-11 20:40:18
eff cgit version of blob_plain/HEAD:/ and blob/HEAD:/ 2014-12-11 12:26:17
en Update tails logo img tag 2014-11-15 09:21:39
getinvolved Add Yawning as a prospective mentor of UDP transports 2015-02-07 20:07:50
images Make the bridge user documentation usable again 2015-01-14 18:43:55
include update mirror tables with current status 2015-01-22 15:48:00
js patch to dlpage01 javascript. 2012-04-26 02:36:52
press Add recent articles and PR to press page 2015-01-20 02:46:01
projects Provide link for TB modification documents 2015-01-20 13:37:13
tordnsel Fix #9736 2014-10-19 15:09:26
.gitignore update .gitignore 2014-10-28 15:31:04
.htaccess More tordnsel/dist to /dist/tordnsel 2014-10-17 10:51:27
Makefile 0.2.6.2-alpha is out. 2014-12-31 19:16:41
Makefile.common only build English website files, please 2011-09-28 12:12:28
Makefile.local.sample Move the TORGIT config option to Makefile.local 2012-02-17 17:50:37
README.md Update README.md 2014-11-17 02:26:43
favicon.ico add a favicon.ico 2010-10-18 06:30:52
po2wml.sh fix download.wml when we convert from .po and make sure fa translations get the right wmi files 2011-09-05 00:27:54
robots.txt Added subheads to the FAQ page; applied ln5's patch 2014-02-09 03:55:13
update-mirrors.pl update the mirrors page, have the script update the csv list with last status. 2013-12-06 16:54:04
wml2po.sh minor fix 2011-09-05 02:36:50
README.md

How to contribute

Thanks for being interested to work on the website, I tried to make a simple how-to for you to quickly get you setup:

Step 1: Clone the git repo.

git clone https://git.torproject.org/project/web/webwml.git
cd webwml

Step 1b: Create a bare public repository (i.e on Github), where you'd push your commits to. Make sure you're in webwml directory, and run:

git remote add pick-a-name your-git-url

Example: git remote add tpo-gh git@github.com:mrphs/tpo.git

Step 2: Create and switch to a new branch.

In the following example, I've named my branch "docs" as I'm planning to work on the documentations.

git checkout -b docs

Step 3: Now you can start working on website and make changes. Once you're done, commit and push it to your public repo.

Example:

git push tpo-gh docs

Step 4: Open a new ticket on trac with a link to your shiny new repo/branch.

Building website

Torproject website is being built and published automatically. To quickly get set up and build website locally, simply follow these steps:

Step 1: Get the website's build dependencies.

sudo apt-get install wml asciidoc

Step 2: Configure where to find your tor git repository. It needs this to make the manual page.

git clone https://git.torproject.org/project/web/webwml.git
cd webwml
cp Makefile.local.sample Makefile.local

Note: Change the TORGIT in Makefile.local to point to your tor git repo.

Step 3: Make the website.

make

You should now be able to point your browser at the locally generated site...

file:///home/atagar/Desktop/tor/webwml/getinvolved/volunteer.html.en

Troubleshooting the build

The build fails with "Invalid object name".

If you get an error like...

---- Contents of STDERR channel: ---------
fatal: Invalid object name 'tor-0.2.6.1-alpha'.
asciidoc: FAILED: manpage document title is mandatory
No manpage because of asciidoc error or file not available from git at 
/tmp/wml.zwcq0q/wml.30867.tmp1.wml line 415.

This means your tor repository is out of date. Update your tor git repository.

More detailed instructions from Roger

Note: This section was written when website repo was still on svn, and it wasn't built automatically.

Here are the instructions I sent David Fifield when he asked about editing the website. I hope they are useful for you too! --Roger

Copy Makefile.local.sample to Makefile.local in your webwml/ directory. Point TORGIT to a tor git.

Then apt-get install wml and (alas) probably a shocking number of other debs. Then you can type 'make' and it will build the website for you locally. It's probably a smart move to see whether 'make' works before you git commit any changes to the wml files.

You can edit docs/en/pluggable-transports.wml (and that is the right source file to edit, not the html). But go take a look at that file. You'll notice it has a bunch of tags like . If you're just bumping version numbers, you probably just want to change the definition of those tags. They're in include/versions.wmi

(Every once in a while you may need to edit pluggable-transports.wml too -- generally when you change the file name so drastically that just changing the versions.wmi tags isn't enough.)

Pushes to the master branch of the git repository will cause the website to get re-built and published. Pushing to the staging branch will update www-staging.torproject.org.

Alas, https://www.torproject.org/dist/ isn't in version control. You write to it by ssh'ing to dist-master.torproject.org and going to /srv/dist-master.torproject.org/htdocs/ and then sticking your stuff there. When you want it to go live, you run "static-update-component dist.torproject.org" on dist-master.

Weasel has hopes that somebody will write some scripts to make maintaining packages in dist/ less awful -- automatically check that they have signatures and that the sigs match, that the items on the website are in fact in dist, only allow certain people to put files in certain places, etc. One day! :)