forked from dart-archive/www.dartlang.org
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
137 lines (101 loc) · 4.76 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
The dartlang.org site. Built with Jekyll (https://github.com/mojombo/jekyll)
and hosted on App Engine.
File issues and bugs here: http://dartbug.com/new
Fork and submit patches here: https://github.com/dart-lang/dartlang.org
ORIENTATION
* ./src
* contains all the working files
* ./src/appengine
* contains app engine configuration files
* ./src/site
* documents, HTML files, images, etc.
* you will work out of here normally
* ./build
* generated by jekyll, to be deployed to server
* this directory is transient, can be deleted
CONFIGURING YOUR MAC SYSTEM
* Ensure you have Ruby 1.9.3 or greater.
* You can use brew (if you're on a Mac)
* Ensure you have Python 2.7.
* On a mac? You might want the binary install of Python at http://www.python.org/download/releases/2.7.3/
* Open a new Terminal.
* run 'sudo gem install bundler'
* run 'sudo bundle install' from the root of your dartlang project
* Download and install the App Engine launcher: https://developers.google.com/appengine/downloads
* Tell App Engine to use Python 2.7 if it's not
* It will say, in the log "you're using 2.6"
* On a Mac?
* Go to Preferences, and enter the direct path to the Python 2.7 binary,
which you downloaded from http://www.python.org/download/releases/2.7.3/
* The full path is /Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7
CONFIGURING YOUR WINDOWS SYSTEM
* Essentially the same as MAC, above
* Install Python and Ruby using windows installers
* Install ruby dev kit for windows
* Run 'gem install bundler'
* Run 'bundle install' from the root of your dartlang project
DEVELOPMENT
* Make sure you are in the root of this project.
* Run the server: 'make server'
* Your web browser opens to http://localhost:8080
* You may need to reload once.
* Edit, create docs as normal.
* If you're making changes to the Sass (SCSS) files, you can regenerate the CSS
by running `make compass` from the root of the repository on the command line.
DEVELOPMENT (windows specific tips)
* You probably won't have MAKE available on the command line by default.
* To just get up and running, run `jekyll` from the `src/site` folder.
* This starts up the jekyll webserver and generates into build/static
* If jekyll does not generate output, you need to type `chcp 65001` at the
command prompt to change the code page to UTF-8 (jekyll fails silently
if this is not done).
* To CLEAN, simply delete the contents of build/static and restart jekyll
DEPLOYMENT
* run 'make clean && make deploy'
* this builds the site and places everything into 'build'
* this command also uses the current branch for the app engine version name
* this command will then deploy the site
* You will probably need to grab a unique password from your Google Account settings.
* Save this into the App Engine Launcher during the first deployment.
REGENERATING DARTISANS PLAYLISTS
Did you just run a Dartisans? Good for you! Here's what you need to do:
1. Update the description to be present tense (instead of future),
and remove the link to the moderator page.
1. Ensure the episode is added to the Dartisans playlist, owned by
Google Developers channel.
1. Sort the playlist by date.
1. Ensure your episode explicitly sets a Recorded On date.
1. Format your episode's title like this: "Dartisans ep. XX: Subtitle Here"
1. Pick a great image thumbnail. Don't use the static Dart logo.
1. Now run `make dartisansplaylist`
1. Test it, commit, and go!
UPDATING THE BOOK
The files under docs/dart-up-and-running/contents are autogenerated
from the DocBook files for Dart: Up and Running.
Here's how to update these files.
First, prepare:
* Make sure dart (the Dart VM) is in your PATH.
> which dart
/Users/me/dart/dart-sdk/bin/dart
* Make sure xsltproc is in your PATH.
> which xsltproc
/usr/bin/xsltproc
* Find a copy of the latest .xml files that make up dart-up-and-running.
For example:
> ls ~/Spot/dartbook/GIT-HUB/dart-up-and-running-book
LICENSE bookinfo.xml ch02.xml ch05.xml figs
README.md ch00.xml ch03.xml code foreword.xml
book.xml ch01.xml ch04.xml colo.xml
Now you're ready. From the top directory of this repo,
run the following command, specifying the directory that contains ch*.xml:
make book BOOK_XML_DIR=<dir-with-xml-files>
Example:
make book BOOK_XML_DIR=~/Spot/dartbook/GIT-HUB/dart-up-and-running-book
Wait 4-5 minutes for results.
VERY carefully check the diffs, paying special attention to the headers
at the top. Rerun the `make book` command if you aren't sure of the
changes.
(Yes, different runs of `make book` can have different results, even
when the .xml files haven't changed. The problem I've noticed has been
misnaming files or skipping them in the navigation. Reported as
dartbug.com/8128.)