-
-
Notifications
You must be signed in to change notification settings - Fork 315
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to contribute: help us help you #833
Comments
@LoveIsGrief Thanks for collecting these considerations.
That is exacly what the It is something else that finding the right place to edit is hard, and the other things you mention are absolutely reasonable. Would you mind just opening a PR, simply adding information to the Skimming the makefile I found that |
Yes we don't have any contribution guide at this point.
The last paragraph in the section you are mentioning is pointing towards
It is true we don't explicitly mention that
Would above explanation be more understandable?
Yes, Nix is needed. It is not possible to just edit CSS files (we use less) and bunch of other tools. Nix is the most convenient way to have this setup reproducible and maintainable. Plus we are talking about Nix on nixos.org :)
You don't need NixOS to run work on the website. You only need Nix. You can even use Nix via docker if that is your thing.
Some sort of overview would be nice, but we are waiting until we switch to some other static site generator (once some other issues are solved).
Nix is a key component in this setup. What ever future technology we are going to use the requirement that it needs to support
This is already the case. If you look at the existing workflow files you will see that the preview will be generated for PRs coming from the same repo. For historical reasons we didn't yet enable for other PRs. But we should (and we will).
Currently the Makefile and flake.nix provide this information. As said before more information how things are organized will be provided when we reorganize this repository. I know currently is not ideal, but until we figure out few other things we will keep using it.
👍 Once we have more information a dedicated document would make sense. |
The problem(s)
Which files do I edit?
This is the only clear thing I will know to edit: CSS files. For content and bugs, I don't know where to start. There's no overview of the technologies used or how they are used. Is there a static site generator? Are things just loaded into a
public_html
directory and served using CGI scripts?If there's a problem, I probably have to find out first what we're using to then investigate which component could be failing, to then how it's failing and what can be done to resolve the issue. If everybody, individually first has to figure out what's being used, it takes away valuable time from the individual that they could have spent on the next step.
nix
requirementThe
README.md
just provides a block on how to run the homepage with live-reload.but in order to run it, I need
nix
. Were I just a passerby who saw a CSS error or a content error, I'd have to spend a good chunk of time first installing everything to just contribute minor changes. Especially for content, requiring more than an editor seems like overkill to me.In my case, I'm still testing nixOS on another computer that doesn't have all my secrets, so booting that up just to contribute is pretty meh.
Suggestions
List the technologies used
Helps save time for contributors: they'll know which competencies to have in order to contribute to a certain aspect of the project.
The CSS line is a good start, but content and bugs definitely need more information.
I shouldn't have to read a bunch of different files to try and find out what this
.tt
extension is and what possibilities it provides (still don't know what it actually is and if I can get syntax highlighting for it).A
nix
-less contribution flowSince I don't know which technologies are used, I'm assuming the site is a generated, static one.
It would be nice to be able to "just" clone the repo, make edits, push them and see them somewhere. Github actions should allow that pretty easily if I'm not mistaken.
Overview of how things work together
As stated in Problems>"Which files do I edit?", it really helps to at least know which files are for what. Having an overview of how they are connected together is a nice to have, but definitely possible because Github supports Mermaid diagrams.
As a first step, it might even be just enough to have
README.md
s in the various foldersKnowing as a contributor for example "I want to edit content on the page with that guide on how to setup an environment, I go to /content/guides/environment_setup.tt" reduces searching time so much!
CONTRIBUTING.md
(optional)Maybe this is a personal preference, but the
README.md
can become a bit cluttered, so moving out in-depth or further information to a dedicated document makes sense to me 🤷Related issues: #671
The text was updated successfully, but these errors were encountered: