Skip to content

Commit

Permalink
Merge branch 'dev'
Browse files Browse the repository at this point in the history
  • Loading branch information
he3als committed Jun 6, 2024
2 parents 0e4e558 + 29ba9fc commit dce457e
Show file tree
Hide file tree
Showing 14 changed files with 119 additions and 206 deletions.
23 changes: 0 additions & 23 deletions .github/CONTRIBUTING.md

This file was deleted.

8 changes: 3 additions & 5 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
### Type
- [ ] Rewrite already written documentation.
- [ ] Add/remove new pages.
- [ ] Rewrite already written documentation
- [ ] Add/remove new pages

### Questions
- [ ] Did you preview on your local machine beforehand?
- [ ] Did you follow our [commit handbook](https://github.com/Atlas-OS/docs/blob/master/.github/CONTRIBUTING.md#commit-message)?
- [ ] Did you preview your changes beforehand?
- [ ] Did you read the [Atlas Contribution Guidelines](https://docs.atlasos.net/contributions/)?
- [ ] Did you commit to the `dev` branch and not `master`?

### Describe your pull request
40 changes: 0 additions & 40 deletions .github/workflows/dev-branch-merge.yaml

This file was deleted.

55 changes: 0 additions & 55 deletions .github/workflows/filter.yaml

This file was deleted.

13 changes: 13 additions & 0 deletions .github/workflows/labeler.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: "Pull Request Labeler"

on:
- pull_request_target

jobs:
filter:
permissions:
contents: read
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v4
20 changes: 11 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,21 @@

<a href="https://github.com/Atlas-OS/.github/blob/main/profile/CODE_OF_CONDUCT.md"><img alt="Code of Conduct" src="https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg?style=for-the-badge&color=1A91FF" /></a>

Atlas documentation hosted on Cloudflare Pages using Material for MkDocs.
This repository contains the Atlas documentation hosted on Cloudflare Pages using Material for MkDocs.

Here you can help Atlas with documentation, for now we do not have translation capabilities but they will be added in the future.
**Want to contribute?** Please check out the [Atlas Contribution Guidelines](https://docs.atlasos.net/contributions) for more information.

**Want to contribute?** Please check out our [Documentation Contribution Guidelines](.github/CONTRIBUTING.md) and the [Atlas Contribution Guidelines](https://docs.atlasos.net/contributions) for more information.
## How do I contribute?

## How to make a preview build?
As MkDocs Material uses Python, you must install [Python](https://www.python.org/downloads/) alongside `pip` before continuing.

As MkDocs uses Python, you will need to have Python and pip installed, we recommend using [Scoop](https://scoop.sh) or [Chocolatey](https://chocolatey.org) to install these but you can also install via [Python's website](https://www.python.org).
1. Once you've cloned the repository, `cd` into it using a shell
1. Run `pip install -r requirements.txt` to install all the dependencies
1. If you're on Windows, run `locally-host.cmd` to host the documentation preview
- If you're on another OS, just run `mkdocs serve`
- The `locally-host.cmd` script is only for convenience

Material for MkDocs has already made a page, which you can use for [Installation of Material for MkDocs](https://squidfunk.github.io/mkdocs-material/getting-started).
You can now make all your changes and view them live!

Depending if you installed it locally or via a virtual envioronment, there is already a [guide on previewing](https://squidfunk.github.io/mkdocs-material/creating-your-site/#previewing-as-you-write)

## Credit
## Credits
- [Hummingbot documentation](https://github.com/hummingbot/hummingbot) for many aspects of the documentation theming, such as the blurred header
Binary file modified docs/assets/brand/icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
95 changes: 40 additions & 55 deletions docs/contributions.md
Original file line number Diff line number Diff line change
@@ -1,94 +1,79 @@
---
description: The official contribution guidelines for the AtlasOS playbook
description: The official contribution guidelines for Atlas
icon: material/handshake
---

# :material-handshake: Contribution Guidelines

This page provides guidelines on how to contribute to Atlas. All contributions are much appreciated!
This page provides guidelines on how to contribute to Atlas. We highly appreciate your contributions!

Atlas uses Git to manage everything on the platform [:simple-github: GitHub](https://github.com/Atlas-OS). To more easily interact with Git, you can use:
Atlas uses [:simple-github: GitHub](https://github.com/Atlas-OS) to manage everything. See the [GitHub quick start guide](https://docs.github.com/get-started/quickstart) first if you're unfamiliar with GitHub. Apart from how to use GitHub, this page tells you everything else.

* An IDE like [:simple-visualstudiocode: Visual Studio Code](https://code.visualstudio.com/) or [:simple-vscodium: VSCodium](https://vscodium.com)
* [:simple-github: GitHub Desktop](https://desktop.github.com/) (recommended)
## :octicons-git-commit-24: Areas of contribution

Alternatively, you can use the [:simple-git: Git](https://git-scm.com/) command-line. Use whichever Git interface you find most familiar and easiest. Before contributing, you should [research](https://docs.github.com/en/get-started/quickstart) about Git first.
A [Code of Conduct](https://github.com/Atlas-OS/.github/blob/main/profile/CODE_OF_CONDUCT.md) applies to each Atlas repository. Please read this before contributing.

## :octicons-git-commit-24: How you can contribute
### Atlas Playbook

* [:material-pen-plus: **Atlas Playbook**](https://github.com/Atlas-OS/Atlas) - The Atlas playbook (`.apbx`) that is used in AME Wizard.
* ([GPLv3](https://github.com/Atlas-OS/Atlas/blob/main/LICENSE)) ([:octicons-code-of-conduct-16: CoC](https://github.com/Atlas-OS/Atlas/blob/main/.github/CODE_OF_CONDUCT.md))
* Read AME Wizard's [:material-file-document: Documentation](https://docs.ameliorated.io/developers.html) for help.
[:simple-github: GitHub Repository](https://github.com/Atlas-OS/Atlas){ .md-button }
[:material-license: License (GPLv3)](https://github.com/Atlas-OS/Atlas/blob/main/LICENSE){ .md-button }
[:material-tag: Releases](https://github.com/Atlas-OS/Atlas/releases){ .md-button }

* [:material-language-rust: **Atlas Utilities**](https://github.com/Atlas-OS/Atlas-Utilities) - General tools used in Atlas like `filepicker.exe`, made in Rust.
* ([GPLv3](https://github.com/Atlas-OS/Atlas-Utilities/blob/main/LICENSE)) ([:octicons-code-of-conduct-16: CoC](https://github.com/Atlas-OS/utilities/blob/master/.github/CODE_OF_CONDUCT.md))
This repository contains Atlas' central source code, a Playbook file (`.apbx`) used with AME Wizard. It contains all the various scripts, configurations, and more that Atlas applies to people's systems.

* [:material-book-plus-multiple: **Atlas Documentation**](https://github.com/Atlas-OS/docs) - The website that you are looking at.
* ([:fontawesome-brands-creative-commons: CC-BY-SA-4.0](https://github.com/Atlas-OS/docs/blob/master/LICENSE)) ([:octicons-code-of-conduct-16: CoC](https://github.com/Atlas-OS/docs/blob/master/.github/CODE_OF_CONDUCT.md))
* Read [this](https://github.com/Atlas-OS/docs/blob/master/.github/CONTRIBUTING.md) documentation-specific contribution guide for help.
If you're unsure where to start, read [AME's documentation](https://docs.ameliorated.io/developers.html) for help.

These are the three main repositories to contribute to. There might also may be other repositories that fits your expertise. [Check out our GitHub organisation](https://github.com/Atlas-OS).
Consider using virtualization software like [VMWare Workstation](https://www.vmware.com/products/desktop-hypervisor.html) or [Hyper-V](https://learn.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v) to test. You can use 7-Zip or the included `src\playbook\local-build.cmd` script to build your Playbook.

If a repository has a specified template for pull requests or issues, please use them. Otherwise, the maintainers reserve the right to close and lock your issue without further response.
### Atlas Documentation

## :material-chat-question: How it works
[:simple-github: GitHub Repository](https://github.com/Atlas-OS/docs){ .md-button }
[:material-license: License (CC-BY-SA-4.0)](https://github.com/Atlas-OS/docs/blob/master/LICENSE){ .md-button }

Each repository has a `dev` branch and a `main` or `master` branch for development.
The website that you are looking at. We made the Atlas documentation in [MkDocs Material](https://squidfunk.github.io/mkdocs-material/), a documentation framework that uses markdown.

!!! warning
Make **all of your changes** to the `dev` branch of the respective repositories!
See the repository on how to get started contributing.

Never commit or pull request directly to the `main` branches.
## :octicons-issue-closed-24: How our GitHub Issues work

The `dev` branch exists to ensure that only approved and high-quality changes are merged into the `main` branch.
For transparency with users, we keep issues that affect the current release open and label them with the **fixed next release**.

A pull request **every week** will be automatically created to merge the `dev` branch into the `main` branch, where the changes can be properly reviewed by **5 contributors** before the pull request is merged. The only exclusion to having less than 5 reviews is if there's not enough people reviewing, e.g. 4 reviews for documentation.
## :octicons-git-pull-request-24: How to make changes

This ensures that all changes are thoroughly reviewed and agreed upon collectively, resulting in fewer bugs, improved code quality, and a more organized development process.
!!! tip "Unsure if people like your change?"
Consider proposing the change to people in the [:simple-discord: Discord](https://discord.gg/atlasos) or [:octicons-issue-opened-16: GitHub issues](https://github.com/Atlas-OS/Atlas/issues) first.

Regardless, remember that it's okay to make mistakes. People will give feedback in your pull requests anyway; don't worry about it too much.

You will have to make your own fork of the respective Atlas repository, and then make a pull request to merge your modified fork's branch into the `dev` branch.

### :material-git: People with write access
1. Make a fork, or for team members, a branch in the repository
1. Make your changes, then make a pull request to the primary branch of the repository
1. Wait for at least two reviews, **depending on the size of the change**
- For team members, we only require one review
1. When it's merged, it will be squash-merged into the primary branch of the repository
- This means all commits from the branch will be combined into one

!!! note
This only applies to people with direct access to commit to the repositories, without the need to do a pull request.

This list is from our [GitHub organisation's member list](https://github.com/orgs/Atlas-OS/people).

For any significant changes, consider creating a pull request for the `dev` branch instead of committing directly.

This means less potential headache in the future if the change is disagreed upon, as you can avoid reverting all of the disliked changes for the automatic pull request every week.

If you want to, you can also manually trigger the automatic pull request to merge `dev` into `main` early, but the 5 reviews will still be in effect. As a note, if you need to urgently fix something, you can use the `bypass` label to bypass your pull request being automatically closed by the pull request filter.

For regular pull requests, you can make your own branch in the Atlas repository or make a fork, it is your choice.
The only exclusion to this is when there is an urgent change, which team members might directly commit to the primary branch of a repository.

## :material-format-letter-case: Formatting

Before each commit, ensure that:

* Your changes comply with the overall formatting of a repository
* There are the most minimal amount of mistakes, check grammar and anything else important
* For any YAML change, please verify that it is valid before committing with [YAML Lint](https://www.yamllint.com/).
* People would generally agree with the change
* If you don't know, ask people in the [:simple-discord: Discord](https://discord.gg/atlasos) or [:octicons-issue-opened-16: GitHub issues](https://github.com/Atlas-OS/Atlas/issues).
Before a pull request, ensure that:

Making sure that your commits are already to a high standard means that development will be faster and more organized. However, keep in mind that it's okay to make mistakes sometimes, as people will give feedback/reviews in your pull requests, so don't worry about it too much.
- Your changes comply with the general formatting of a repository
- There's a minimal amount of mistakes; check grammar and anything else important
- For YAML changes, verify that they are valid using a linter

### :octicons-verified-16: Commit Signature Verification
We highly recommend setting up [commit signature verification](https://docs.github.com/en/authentication/managing-commit-signature-verification). This marks your commits as 'Verified', indicating they come from a trusted source.

You can install [:simple-gnuprivacyguard: GPG](https://gnupg.org/) (used for signing) in Windows with [Scoop](https://scoop.sh/) with the following command:
```
scoop install gpg
```
Check out this [detailed guide on setting up verified commits](https://gist.github.com/Beneboe/3183a8a9eb53439dbee07c90b344c77e#file-how-to-setup-verified-commits-md).
We highly recommend setting up [commit signature verification](https://docs.github.com/en/authentication/managing-commit-signature-verification). This marks your commits as **:material-checkbox-marked-circle: Verified**, indicating commits have not been forged by someone else.

Check out this [detailed guide on setting up verified commits](https://gist.github.com/Beneboe/3183a8a9eb53439dbee07c90b344c77e#file-how-to-setup-verified-commits-md). You can install [:simple-gnuprivacyguard: GPG](https://gnupg.org/) (used for signing) in Windows with [Scoop](https://scoop.sh/): `scoop install gpg`

### :octicons-git-branch-16: Conventional Commits

We recommend using [:simple-conventionalcommits: Conventional Commits](https://www.conventionalcommits.org/) in Atlas repositories for consistency and more descriptive commits. You can also take a look at [Angular's Conventional Commits](https://github.com/angular/angular/blob/68a6a07/CONTRIBUTING.md#commit) for more guidance.
We recommend using [:simple-conventionalcommits: Conventional Commits](https://www.conventionalcommits.org/) in Atlas repositories for consistency and more descriptive commits. You can also look at [Angular's Conventional Commits](https://github.com/angular/angular/blob/68a6a07/CONTRIBUTING.md#commit) for more guidance.

Conventional Commits are a type of commit message format that helps to make the commit history more readable and easier to navigate.
Conventional Commits are a commit message format that helps to make the commit history more readable and easier to navigate.

*Example*: [`feat: ✨ add fAllowFullControl`](https://github.com/Atlas-OS/Atlas/commit/72cdcc7b327df19fd07e9c6eb0a10812ac6936b0)

Expand Down
Loading

0 comments on commit dce457e

Please sign in to comment.