Skip to content

FeedEcho v1.5.1 — Nix Flake + NixOS Module

Choose a tag to compare

@jcrabapple jcrabapple released this 09 Aug 01:34
· 1 commit to master since this release

FeedEcho v1.5.1 — Nix Flake + NixOS Module

Adds a Nix flake and NixOS module for declarative deployments. No application changes since v1.5.0.

What's included

  • flake.nix — builds FeedEcho as a Python application, exposes packages per system and a NixOS module
  • nix/module.nixservices.feedecho NixOS module with:
    • Dedicated feedecho system user
    • LoadCredential for auth token (never in the process listing)
    • Systemd hardening (ProtectSystem, PrivateTmp, NoNewPrivileges)
    • Configurable port, data directory, callback URL, firewall
  • nix/package.nix — standalone derivation for non-flake NixOS users
  • nix/README.md — full install and configuration docs

Usage

{
  inputs.feedecho.url = "github:jcrabapple/feedecho";
  outputs = { self, nixpkgs, feedecho, ... }: {
    nixosConfigurations.myhost = nixpkgs.lib.nixosSystem {
      modules = [
        feedecho.nixosModules.default
        {
          services.feedecho = {
            enable = true;
            authTokenFile = "/run/secrets/feedecho-token";
            callbackUrl = "https://feedecho.example.com/oauth/callback";
          };
        }
      ];
    };
  };
}

Other changes

  • pyproject.toml version bumped to 1.5.0 (was 0.1.0)
  • Wheel build now includes templates/static/favicon (self-contained install)
  • LICENSE file added (MIT)

Note

The Nix files use standard patterns but were not nix build-tested locally (no Nix on the development machine). The person who requested this should run nix build and report any issues — the fetchFromGitHub hash in nix/package.nix will need to be filled in after the first build.