Skip to content

Commit f8c0032

Browse files
committed
feat: Moved documentation over from main-site
1 parent 5a8c7e6 commit f8c0032

54 files changed

Lines changed: 2963 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
---
2+
title: android-studio
3+
description: A reference page for the Android Studios resource
4+
---
5+
6+
The Android Studio resource installs Android Studios. It supports the current and all previous versions.
7+
It also allows preview and beta versions to be installed.
8+
9+
## Parameters:
10+
11+
- **version**: *(string)* The version to install. This will default to the latest stable version if it isn't
12+
specified. For a list of all available versions please see: https://developer.android.com/studio/archive.
13+
14+
- **directory**: *(string)* A custom directory to install Android Studios to. This defaults to `/Applications`
15+
if left unspecified
16+
17+
## Example usage:
18+
19+
Stable version:
20+
```json title="codify.jsonc"
21+
[
22+
{
23+
"type": "Android Studio"
24+
}
25+
]
26+
```
27+
28+
Stable and previous version:
29+
```json title="codify.jsonc"
30+
[
31+
{
32+
"type": "Android Studio"
33+
},
34+
{
35+
"type": "Android Studio",
36+
"version": "2024.2.1.8"
37+
}
38+
]
39+
```
40+
41+
Custom directory:
42+
```json title="codify.jsonc"
43+
[
44+
{
45+
"type": "Android Studio",
46+
"version": "2024.2.1.7",
47+
"directory": "~/programs"
48+
}
49+
]
50+
```

docs/resources/(resources)/apt.mdx

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
---
2+
title: apt
3+
description: A reference page for the apt resource
4+
---
5+
6+
The apt resource reference. This resource manages packages on Debian-based Linux systems using the APT (Advanced Package Tool) package manager. APT is the standard package manager for Ubuntu, Debian, Linux Mint, and other Debian-based distributions.
7+
8+
## Parameters:
9+
10+
- **install**: *(array[string | object])* A list of packages to install using apt. Each package can be specified as:
11+
- A simple string with the package name (e.g., `"curl"`)
12+
- An object with `name` and optional `version` fields for version-specific installations
13+
14+
- **update**: *(boolean)* Whether to run `apt-get update` before installing packages to refresh the package index. Defaults to `true`. Set to `false` to skip the update step if you've recently updated your package lists.
15+
16+
## Example usage:
17+
18+
### Installing packages with simple names
19+
20+
```json title="codify.jsonc"
21+
[
22+
{
23+
"type": "apt",
24+
"install": [
25+
"curl",
26+
"git",
27+
"vim",
28+
"build-essential"
29+
]
30+
}
31+
]
32+
```
33+
34+
### Installing specific package versions
35+
36+
```json title="codify.jsonc"
37+
[
38+
{
39+
"type": "apt",
40+
"install": [
41+
"curl",
42+
{
43+
"name": "nginx",
44+
"version": "1.18.0-0ubuntu1"
45+
},
46+
{
47+
"name": "postgresql",
48+
"version": "12+214ubuntu0.1"
49+
}
50+
]
51+
}
52+
]
53+
```
54+
55+
### Skipping the update step
56+
57+
```json title="codify.jsonc"
58+
[
59+
{
60+
"type": "apt",
61+
"install": [
62+
"jq",
63+
"htop"
64+
],
65+
"update": false
66+
}
67+
]
68+
```
69+
70+
## Notes:
71+
72+
- The apt resource requires sudo privileges to install packages. Codify will prompt for your password when needed.
73+
- APT is only available on Debian-based Linux distributions. For Red Hat-based systems, use the [yum](/docs/resources/yum) or [dnf](/docs/resources/dnf) resources instead.
74+
- Package names must match those available in your configured APT repositories. Use `apt search <package>` to find available packages.
75+
- When specifying versions, use the exact version string as shown by `apt-cache policy <package>`.
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
---
2+
title: asdf-install
3+
description: A reference page for the asdf install resource
4+
---
5+
6+
Asdf is an all-in-one tool manager designed to replace individual language specific version managers
7+
such as pyenv, nvm, rbenv, etc.
8+
9+
The `asdf-install` resource is responsible for installing
10+
`.tool-versions` files and/or installing specific versions of tools. The `directory` parameter
11+
installs all the tools found within the `${directory}/.tool-versions` file and loads it for
12+
that directory and any subdirectories. When using the `directory` parameter, Codify
13+
will also automatically install all the required plugins found in that file unlike
14+
the `asdf` CLI.
15+
16+
The `plugin` and `versions` parameters install specific versions of a tool and must be
17+
used together but cannot be used with the `directory` parameter. Tools installed using `plugin`
18+
and `version` parameters must be loaded separately using the `asdf-local` or `asdf-global`
19+
resources.
20+
21+
See [the main page](/docs/core-resources/asdf/asdf) for an overview of the various asdf resources.
22+
23+
## Parameters:
24+
25+
- **directory**: *(string)* The directory that contains `.tool-versions` file to install. This
26+
parameter cannot be used together with the plugin and versions parameter.
27+
28+
- **plugin**: *(string)* The name of the asdf plugin. The plugin must already exist on the system.
29+
Install plugins using [`asdf`](/docs/core-resources/asdf/asdf) or
30+
[`asdf-plugin`](/docs/core-resources/asdf/asdf-plugin). This parameter must be used together
31+
with the versions parameter.
32+
33+
- **versions**: *(array[string])* An list of tool versions to install. The versions
34+
must match one of the versions listed in `asdf list all <plugin>`, asdf does not perform
35+
any fuzzy matching. Asdf provides the `latest` version to install the latest version of a tool.
36+
This parameter must be used together with the `plugin` parameter
37+
38+
## Example usage:
39+
40+
#### Install a `.tool-versions` file
41+
```json title="codify.jsonc"
42+
[
43+
{
44+
"type": "asdf"
45+
},
46+
{
47+
"type": "asdf-install",
48+
"directory": "~/projects/my-project"
49+
}
50+
]
51+
```
52+
53+
#### Install the global `.tool-versions` file
54+
```json title="codify.jsonc"
55+
[
56+
{
57+
"type": "asdf"
58+
},
59+
{
60+
"type": "asdf-install",
61+
"directory": "~"
62+
}
63+
]
64+
```
65+
66+
#### Install the latest version of ruby
67+
```json title="codify.jsonc"
68+
[
69+
{
70+
"type": "asdf",
71+
"plugins": ["ruby"]
72+
},
73+
{
74+
"type": "asdf-install",
75+
"plugin": "ruby",
76+
"versions": ["latest"]
77+
},
78+
{
79+
"type": "asdf-global",
80+
"plugin": "ruby",
81+
"version": "ruby"
82+
}
83+
]
84+
```
85+
86+
## Dependencies:
87+
88+
asdf-install has a hard dependency on asdf being installed on the system already or
89+
`asdf` being in the config.
90+
91+
asdf-install using the `plugin` and `versions` parameters requires that the plugin be
92+
already installed on the system or `asdf.plugins` or `asdf-plugins` exists in the config.
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
---
2+
title: asdf-plugin
3+
description: A reference page for the asdf plugin resource
4+
---
5+
6+
Asdf is an all-in-one tool manager designed to replace individual language specific version managers
7+
such as pyenv, nvm, rbenv, etc.
8+
9+
The `asdf-plugin` resource installs and
10+
manages plugins. A full list of plugins can be found at https://github.com/asdf-community.
11+
Optionally `asdf-plugin` can also install and manage versions of the tool using the
12+
`versions` parameter. This will install the tool and not just the plugin that manages
13+
the tool. Tools are still not usable after they are installed until they are loaded
14+
with `asdf-local` or `asdf-global`.
15+
16+
See [the main page](/docs/core-resources/asdf/asdf) for an overview of the various asdf
17+
resources.
18+
19+
## Parameters:
20+
21+
- **plugin**: *(string, required)* The name of the asdf plugin. The name must match one of the plugins
22+
found in https://github.com/asdf-community.
23+
24+
- **versions**: *(array[string])* An optional list of tool versions to install. The versions
25+
must match one of the versions listed in `asdf list all <plugin>`, asdf does not perform
26+
any fuzzy matching. Asdf provides the `latest` version to install the latest version of a tool.
27+
28+
- **gitUrl**: *(string)* Optionally, specify a git url to clone the asdf plugin from.
29+
30+
## Example usage:
31+
32+
#### Install asdf and the golang plugin:
33+
```json title="codify.jsonc"
34+
[
35+
{
36+
"type": "asdf"
37+
},
38+
{
39+
"type": "asdf-plugin",
40+
"plugin": "golang"
41+
}
42+
]
43+
```
44+
45+
#### Install asdf, the golang plugin, and the latest version of golang:
46+
```json title="codify.jsonc"
47+
[
48+
{
49+
"type": "asdf"
50+
},
51+
{
52+
"type": "asdf-plugin",
53+
"plugin": "golang",
54+
"versions": ["latest"]
55+
}
56+
]
57+
```
58+
59+
#### Fully specify the url of the golang plugin
60+
```json title="codify.jsonc"
61+
[
62+
{
63+
"type": "asdf"
64+
},
65+
{
66+
"type": "asdf-plugin",
67+
"plugin": "golang",
68+
"gitUrl": "https://github.com/asdf-community/asdf-golang.git"
69+
}
70+
]
71+
```
72+
73+
## Dependencies:
74+
75+
asdf-plugin has a hard dependency on asdf being installed on the system already or
76+
`asdf` being in the config.

0 commit comments

Comments
 (0)