Intro Assignment for Project
Your first task is to spend some time exploring the project and to write a document summarizing your findings. Pretend you are starting an internship or a job and this is your project–what do you want to know to get started?
Make sure you read:
- the project README,
- the how to contribute guide,
- the Synconomicon,
- and the Sync and Storage Handbook.
My expectation is a 2-4 page document that clearly and concisely addresses the following:
- What is the purpose of the project?
- Why does it exist?
- What does it do?
- What are the components?
- What do the APIs for clients look like?
- Confirm that you built the code in your development environment.
You may want to poke around the code a bit.
I also want a list of the 5 people that will be your group members.
Building on Linux
The VM image I distributed at the beginning of class needs to have some libraries and binaries installed in order to build.
Run the following:
sudo apt-get -y install ninja-build \
libz-dev \
llvm \
clang \
clang-format \
libclang-dev \
libxcb-render0-dev \
libxcb-shape0-dev \
libxcb-xfixes0-dev
Then, inside your application-services
directory:
git clone https://chromium.googlesource.com/external/gyp.git tools/gyp
wget https://bootstrap.pypa.io/ez_setup.py -O - | python2.7 - --user
cd tools/gyp/
sudo python2.7 setup.py install
Now you should be able to set up your environment with:
source libs/bootstrap-desktop.sh
After this, cargo test --all
should succeed. Note that your VM needs more than
4GB of memory in order for all unit tests to pass. If you want to increase the
memory allocated to your VM, shut the VM down, and go to the settings menu, then
the “System” tab.