Skip to content

Commit

Permalink
switch to mkdocs
Browse files Browse the repository at this point in the history
  • Loading branch information
zowoq committed Apr 26, 2023
1 parent 9352367 commit 6ba43ec
Show file tree
Hide file tree
Showing 12 changed files with 182 additions and 173 deletions.
83 changes: 1 addition & 82 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,87 +2,6 @@

Welcome to the Nix Community infrastructure project. This project holds all the NixOS and Terraform configuration for this organization.

## Services

### `Community builder` - build01.nix-community.org

We provide an x86 build machine as a public remote builder for the nix community, this machine also has an aarch64 machine configured as its own remote builder.

See [here](roles/builder/README.md) for more information.

### `Continuous integration`

We provide x86 and aarch64 linux CI via these systems:

- `Hercules` - https://hercules-ci.com/github/nix-community

- To enable hercules builds go to `https://hercules-ci.com/github/nix-community/$REPO` and click "Build this repository".

- `Hydra` - https://hydra.nix-community.org

- To enable hydra builds add a new project in this [file](terraform/hydra-projects.tf).

### `Cache` - https://nix-community.cachix.org/

All of the above CI builds are pushed to the cache.

Thanks to Cachix for sponsoring our binary cache!

### `Search` - https://search.nix-community.org

Hound code search for NixOS and nix-community GitHub organisations.

### `nix-community.org DNS`

DNS is managed by terraform in this [file](terraform/cloudflare_nix-community_org.tf).

### `ryantm-updater bot`

- Docs: https://ryantm.github.io/nixpkgs-update
- Logs: https://r.ryantm.com/log/

### `nur-update`

## Support

For urgent matters, create an issue here: [New Issue](https://github.com/nix-community/infra/issues/new).

For repo additions, service requests and general conversation about governance and direction of the project, use the [Discussion forum](https://github.com/orgs/nix-community/discussions).

For casual chat, come join us in the [nix-community](https://matrix.to/#/#nix-community:nixos.org) room.

The admins can also be contacted via [[email protected]](mailto:[email protected]), email sent to this address will be forwarded to all of the admins.

### nix-community administrators

- [@Mic92](https://github.com/Mic92)
- [@adisbladis](https://github.com/adisbladis)
- [@ryantm](https://github.com/ryantm)
- [@zimbatm](https://github.com/zimbatm)
- [@zowoq](https://github.com/zowoq)

#### Role

The role of the administrators is to support the members of the org, and the Nix project in general.

#### Responsibilities

The administrators are responsible for serving the community to the best of their ability and availability.

They provide services such as:

- keep the systems updated and patched
- reply to user requests
- host new services that could help the project
- on-board new projects
- resolve conflict

The administrators are the only "owners" of the github organization.

#### Quorum of 5 rule

To reduce the attack surface on the project, the administrative team size is limited to 5 people.

## Hosts
You're probably looking for our website [https://nix-community.org](https://nix-community.org).

See [HOSTS.md](HOSTS.md), this file also contains deployment details.
62 changes: 0 additions & 62 deletions docs/README.md

This file was deleted.

26 changes: 0 additions & 26 deletions docs/_config.yml

This file was deleted.

27 changes: 27 additions & 0 deletions docs/administrators.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
- [@Mic92](https://github.com/Mic92)
- [@adisbladis](https://github.com/adisbladis)
- [@ryantm](https://github.com/ryantm)
- [@zimbatm](https://github.com/zimbatm)
- [@zowoq](https://github.com/zowoq)

#### Role

The role of the administrators is to support the members of the org, and the Nix project in general.

#### Responsibilities

The administrators are responsible for serving the community to the best of their ability and availability.

They provide services such as:

- keep the systems updated and patched
- reply to user requests
- host new services that could help the project
- on-board new projects
- resolve conflict

The administrators are the only "owners" of the github organization.

#### Quorum of 5 rule

To reduce the attack surface on the project, the administrative team size is limited to 5 people.
4 changes: 2 additions & 2 deletions roles/builder/README.md → docs/community-builder.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
## Community builder
### Access

If you want access read the security guide lines on [aarch64-build-box](https://github.com/nix-community/aarch64-build-box). Than add your username to [`roles/builder/users.nix`](users.nix). Don't keep any important data in your home! We will regularly delete `/home` without further notice.
If you want access read the security guide lines on [aarch64-build-box](https://github.com/nix-community/aarch64-build-box). Than add your username to [`roles/builder/users.nix`](https://github.com/nix-community/infra/blob/master/roles/builder/users.nix). Don't keep any important data in your home! We will regularly delete `/home` without further notice.

### Using your NixOS home-manager configuration on the hosts

Expand Down
7 changes: 7 additions & 0 deletions docs/contact.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
For urgent matters, create an issue here: [New Issue](https://github.com/nix-community/infra/issues/new).

For repo additions, service requests and general conversation about governance and direction of the project, use the [Discussion forum](https://github.com/orgs/nix-community/discussions).

For casual chat, come join us in the [nix-community](https://matrix.to/#/#nix-community:nixos.org) room.

The admins can also be contacted via [[email protected]](mailto:[email protected]), email sent to this address will be forwarded to all of the admins.
20 changes: 20 additions & 0 deletions docs/faq.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
### How do I get my project included?

Ideally the type of projects that are accepted have some level of maturity and can benefit from a shared ownership. The goal is to have as much projects maintained and not for the org to become a graveyard.

We don't have a strict procedure. For now, ping one of the [nix-community administrators](./administrators.md).

### What are the rules of engagement?

The Nix community is nice. Be nice! Typically this means:

1. Argument on technical details, not the people.
2. Give the benefit of the doubt as much as possible. We all have different lives with different backgrounds.
3. Keep in mind that all the work here is done by volunteers.
4. :)

Nothing is set in stone. Think of these as the guidelines for our interactions.

The maintainer of a project gets admin access to the project they maintain. The maintainer can request that more people be invited into the org so they can join their projects team.

If you see a project that is under-maintained, submit PRs to fix it as if it was your own project. If the PRs don't get merged, ping the [nix-community administrators](./administrators.md).
28 changes: 28 additions & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
[nix-community]: https://github.com/nix-community
[NixOS]: https://github.com/NixOS

<img src="nix-community-logo.svg" width="100" height="100" alt="Nix community">

[@nix-community][nix-community] is a GitHub organization that works alongside the [@NixOS][NixOS] organization.

The [@NixOS][NixOS] organization holds all the mission-critical projects such as Nix, Nixpkgs, NixOps, Hydra, etc.

The [@nix-community][nix-community] organization is the community playground. We don't need to be as strict with permissions. The org can host any projects that benefit from a shared ownership. We provide infrastructure and support for those projects as well as visibility.

## Infrastructure and services

To support our activities we have a little bit of infrastructure in place, see [services](./services.md). The configuration is kept in [nix-community/infra](https://github.com/nix-community/infra).

## Sponsors

Thanks to all our sponsors.

<!-- prettier-ignore-start -->
|[<img src="https://raw.githubusercontent.com/cachix/docs.cachix.org/master/source/logo.png" width="200" alt="Cachix">](https://cachix.org)|
|:-:|
|Cachix provides us with 1TB of free cache.|

|[<img src="https://raw.githubusercontent.com/Gandi/.github/b1f21a402d9223c672476b41148429f538be5303/logos/black.svg" width="200" alt="Gandi">](https://www.gandi.net/)|
|:-:|
|Gandi provides us with a free domain and a virtual private server.|
<!-- prettier-ignore-end -->
46 changes: 46 additions & 0 deletions docs/services.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
## Community builder

We provide an x86 build machine (`build01.nix-community.org`) as a public remote builder for the nix community, this machine also has an aarch64 machine configured as its own remote builder.

See [here](./community-builder.md) for more information.

## Continuous integration

We provide x86_64 and aarch64 linux CI via these systems:

#### Hercules

[https://hercules-ci.com/github/nix-community](https://hercules-ci.com/github/nix-community)

To enable hercules builds go to `https://hercules-ci.com/github/nix-community/$REPO` and click "Build this repository".

#### Hydra

[https://hydra.nix-community.org](https://hydra.nix-community.org)

To enable hydra builds add a new project in this [file](https://github.com/nix-community/infra/blob/master/terraform/hydra-projects.tf).

## Cache

[https://nix-community.cachix.org/](https://nix-community.cachix.org/)

All of the above CI builds are pushed to the cache.

## Search

[https://search.nix-community.org](https://search.nix-community.org)

Hound code search for NixOS and nix-community GitHub organisations.

## nix-community.org DNS

DNS is managed by terraform in this [file](https://github.com/nix-community/infra/blob/master/terraform/cloudflare_nix-community_org.tf).

## ryantm-updater bot

- Docs: [https://ryantm.github.io/nixpkgs-update](https://ryantm.github.io/nixpkgs-update)
- Logs: [https://r.ryantm.com/log/](https://r.ryantm.com/log/)

## nur-update

[https://github.com/nix-community/nur-update](https://github.com/nix-community/nur-update)
16 changes: 15 additions & 1 deletion flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,21 @@
./shell.nix
];

perSystem.treefmt.imports = [ ./treefmt.nix ];
hercules-ci.github-pages.branch = "master";

perSystem = { config, pkgs, ... }: {
treefmt.imports = [ ./treefmt.nix ];

packages.pages = pkgs.runCommand "pages"
{
buildInputs = [ pkgs.python3.pkgs.mkdocs-material ];
} ''
cp -r ${pkgs.lib.cleanSource ./.}/* .
mkdocs build --strict --site-dir $out
'';

hercules-ci.github-pages.settings.contents = config.packages.pages;
};

flake.nixosConfigurations =
let
Expand Down
35 changes: 35 additions & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
nav:
- Nix Community: index.md
- Services:
- services.md
- community-builder.md
- About:
- FAQ: faq.md
- administrators.md
- contact.md

theme:
name: material
features:
- content.action.edit
- content.code.annotate
- content.tabs.link
- navigation.expand
- navigation.instant
- navigation.tabs
- navigation.tracking
favicon: nix-community-logo.png
logo: nix-community-logo.png
icon:
repo: fontawesome/brands/github

extra:
social:
- icon: fontawesome/brands/github
link: https://github.com/nix-community

site_name: Nix Community
site_url: https://nix-community.org
copyright: Copyright &copy; 2023 Nix community projects
repo_name: "nix-community/infra"
repo_url: https://github.com/nix-community/infra
1 change: 1 addition & 0 deletions shell.nix
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
]
))
rsync
config.packages.pages.buildInputs
config.treefmt.build.wrapper
];
};
Expand Down

0 comments on commit 6ba43ec

Please sign in to comment.