No description
Find a file
2025-12-04 01:52:46 -05:00
src initial commit 2025-12-04 00:43:32 -05:00
.editorconfig initial commit 2025-12-04 00:43:32 -05:00
.gitignore initial commit 2025-12-04 00:43:32 -05:00
build.zig initial commit 2025-12-04 00:43:32 -05:00
build.zig.zon initial commit 2025-12-04 00:43:32 -05:00
build.zig.zon.nix initial commit 2025-12-04 00:43:32 -05:00
flake.lock initial commit 2025-12-04 00:43:32 -05:00
flake.nix trying to package it now 2025-12-04 01:52:46 -05:00
lib.nix maybe this will let us merge into our global config state 2025-12-04 01:17:27 -05:00
LICENSE initial commit 2025-12-04 00:43:32 -05:00
README.md add a warning 2025-12-04 01:37:11 -05:00

FOO UpDater

Declaratively keep your stuff up to date in your nixos config.

Warning

You shouldn't use this just yet as it's still a WIP

Usage

{
  description = "My flake config";
  inputs.fooud.url = "git+https://git.squi.bid/squibid/fooud";
  outputs = { self, nixpkgs, fooud }: {
    nixosConfigurations.my-system = nixpkgs.lib.nixosSystem {
      modules = [{
        services.nginx.virtualHosts."squi.bid" = {
          root = fooud.lib.gitUpdater config {
            git = "https://git.squi.bid/squibid/squi.bid"; # the source of the data
            dest = "/var/www/squi.bid"; # where should the files live on disk
            keys = [ "BECE5684D3C4005D" ]; # requires the commit to be signed by me
            check = "5m"; # we may be no more than 5 minutes out of date from the source
          };

          locations."/" = {
            tryFiles = "$uri $uri.html $uri/";
            index = "index.html index.htm";
          };
        };
      }];
    };
  };
}

TODO

  • extract archives
  • support copying files from other parts of the filesystem (although that's rathar impure isn't it)
  • add some checks