Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jakehamilton/nixpkgs.news


https://github.com/jakehamilton/nixpkgs.news

Last synced: about 5 hours ago
JSON representation

Awesome Lists containing this project

README

        

# nixpkgs.news

Nix Flakes Ready
Built With Snowfall

 

> An experiment to make Nix ecosystem news more accessible.

## Development

If you are using [`direnv`](https://direnv.net), run `direnv allow` after cloning
this repository to automatically enable the development shell. If you are not
using `direnv`, then you must manually run `nix develop` in after cloning this
repository in order to activate the development shell.

The development shell provides the following packages:

- NodeJS
- Bun

Node is used for normal development tasks, but Bun is used to execute `tools/*` scripts
due to Node choking on some useful features. Ideally we would switch over to Bun fully,
but there isn't currently a Nix builder for projects using `bun.lockb` files.

To start developing, run `npm install` to get dependencies and then `npm run dev` to start
the development server.

## Usage

This project is intended to be consumed by a NixOS system. First, add this repository
as an input to your flake.

```nix
{
description = "My Nix flake";

inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-23.11";

nixpkgs-news = {
url = "github:jakehamilton/nixpkgs.news";
inputs.nixpkgs.follows = "nixpkgs";
};
};
}
```

Then you can serve the website's files statically using a server like nginx in your
system configuration.

```nix
{
inputs, # Make the nixpkgs-news input available in your configuration.
...
}:
{
services.nginx = {
enable = true;
recommendedProxySettings = true;

virtualHosts."example.com" = {
locations."/" = {
root = inputs.nixpkgs-news.packages.nixpkgs-news;
};
};
};
}
```