---
layout: default
navsection: installguide
title: Create standard objects
navorder: 4
---

h1. Create standard objects

h3. "All users" group

The convention is to add every active user to this group. We give it a distinctive UUID that looks like an IP broadcast address.

<pre>
prefix=`arv user current | cut -d- -f1`
read -rd $'\000' newgroup <<EOF; arv group create --group "$newgroup"
{
 "uuid":"$prefix-j7d0g-fffffffffffffff",
 "name":"All users"
}
EOF
</pre>

h3. "arvados" repository

This will be readable by the "All users" group, and therefore by every active user. This makes it possible for users to run the bundled Crunch scripts by specifying a commit like "arvados:HEAD", rather than having to pull the Arvados git tree into their own repositories.

<pre>
prefix=`arv user current | cut -d- -f1`
all_users_group_uuid="$prefix-j7d0g-fffffffffffffff"
repo_uuid=`arv repository create --repository '{"name":"arvados"}'`
echo "Arvados repository uuid is $repo_uuid"

read -rd $'\000' newlink <<EOF; arv link create --link "$newlink" 
{
 "tail_kind":"arvados#group",
 "tail_uuid":"$all_users_group_uuid",
 "head_kind":"arvados#repository",
 "head_uuid":"$repo_uuid",
 "link_class":"permission",
 "name":"can_read" 
}                                         
EOF
</pre>
