Files
webcoredesktop/content/contribute.md
T
2026-10-31 08:34:17 -06:00

69 lines
3.2 KiB
Markdown

---
title: "Contribute"
description: "Help make Federated CoreDesktop better: suggest software, send a pull request, and learn how changes reach existing machines through migrations."
sections:
- type: hero
compact: true
eyebrow: "MIT licensed · Pull requests welcome"
title: "Help make CoreDesktop better."
subhead: "Want to help? Awesome! We welcome any and all help. Suggest missing titles or services, or contribute a PR and we're off to a better CoreDesktop."
visual: false
ctas:
- label: "Open the repository"
url: "https://gitea.federated.computer/Federated_Computer/coredesktop"
style: primary
- label: "Report an issue"
url: "https://gitea.federated.computer/Federated_Computer/coredesktop/issues"
style: ghost
- type: steps
kicker: "Ways to help"
headline: "Pick one."
items:
- title: "Suggest software"
body: "Missing a title or service you use every day? [Open an issue](https://gitea.federated.computer/Federated_Computer/coredesktop/issues) and say why. Found a bug? Report it there too."
- title: "Send a pull request"
body: "Packages live in `packages.conf`, Flatpaks in `install-flatpaks.sh`, update steps in `updates.d/` and setup in `configure.d/`. Every push is checked with [shellcheck](https://www.shellcheck.net); run `make check` first, which runs shellcheck and the bats tests."
- title: "Build a sibling"
body: "Have something that's only for you or your team? Make it a [sibling project](/siblings/) instead."
- type: text
kicker: "Migrations"
headline: "Getting a change to existing machines."
body: |
Changes to `install.sh` only reach new installs. If existing machines need the change too, also add a migration: a script named after the current time,
```
migrations/$(date +%s).sh
```
that `update` runs once on each machine. It may also run on fresh installs, so make it safe to repeat.
- type: text
id: license
kicker: "License"
headline: "MIT, the whole project."
body: |
Copyright 2026 Federated Computer, Inc. Permission is granted, free of charge, to anyone who gets a copy of this software to use, copy, modify, merge, publish, distribute, sublicense and sell it, as long as the copyright and permission notice are included. The software is provided as is, without warranty of any kind.
Read the full text in [LICENSE.md](https://gitea.federated.computer/Federated_Computer/coredesktop/src/branch/main/LICENSE.md).
- type: text
kicker: "Thanks"
headline: "Standing on good shoulders."
body: |
Most of the heavy lifting is done by [Arch Linux](https://archlinux.org), and to that distribution we send much gratitude. Arch lets us get on with building, instead of waiting for upstream changes and fixes.
These scripts are based on the initial work of [Typecraft](https://www.youtube.com/@typecraft_dev).
- type: final-cta
headline: "Ready when you are."
ctas:
- label: "Install CoreDesktop"
url: "/install/"
style: primary
- label: "View the source"
url: "https://gitea.federated.computer/Federated_Computer/coredesktop"
style: ghost
---