Source for nixos.org

GitHub Workflow Status of master branch Number of open GitHub issues Number of open GitHub pull requests Month of last commit Number of all contributors

Code and content for the nixos.org website.

Help us!

There are many ways how you can help:

If you feel lost where and how to contribute, ask the marketing team on the #marketing room on Matrix.

How to help?

To run local development instance follow this steps to start a local server

$ git clone git@github.com:NixOS/nixos-homepage.git
$ cd nixos-homepage
$ nix-shell

  To start developing run:
      serve

  and open browser on:
      http://localhost:8000

  It will rebuild the website on each change.

[nix-shell]$ serve

If you have Docker and Docker Compose installed, you can alternatively run

$ docker-compose up

Once everything's ready, you'll be able to access

Open your browser at: http://localhost:8000/

In order for the browser to automatically refresh, install the Livereload extension for your browser.

If you want to build the site with Docker and without automatic refresh, here the steps: (Works on Windows, MacOS and NixOS with Docker)

In the terminal: $ docker run -p 8000:8000 -it --name nixos-homepage nixos/nix # nix-shell -p git [nix-shell]$ git clone git@github.com:NixOS/nixos-homepage.git [nix-shell]$ cd nixos-homepage [nix-shell]$ nix-shell [nix-shell]$ make [nix-shell]$ python -m http.server --bind 0.0.0.0

Then browse to http://localhost:8000/ in the browser

Before creating a pull request make sure that nix-build runs successfully.

Binary cache (Optional)

It can take some time to enter the development environment. To speed up and avoid building from source, you can use a binary cache. The same cache is used to speed up our GitHub Actions.

On NixOS

Add the following to your configuration.nix:

nix.binaryCaches = [ "https://nixos-homepage.cachix.org" ];
nix.binaryCachePublicKeys = [ "nixos-homepage.cachix.org-1:NHKBt7NjLcWfgkX4OR72q7LVldKJe/JOsfIWFDAn/tE=" ];

On non-NixOS

Add the following to the /etc/nix/nix.conf or ~/.config/nix/nix.conf:

substituters = ... https://nixos-homepage.cachix.org
trusted-public-keys = ... nixos-homepage.cachix.org-1:NHKBt7NjLcWfgkX4OR72q7LVldKJe/JOsfIWFDAn/tE=

License

The content of the website is licensed under the Creative Commons Attribution Share Alike 4.0 International license.

The software (including sample code) is licensed under the MIT license.

Some files might have a different license. See the files content for details.