[mirror] Scalable static site server for Git forges (like GitHub Pages)
at v0.3.1 1.4 kB view raw
1{ 2 inputs = { 3 nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; 4 flake-utils.url = "github:numtide/flake-utils"; 5 nix-filter.url = "github:numtide/nix-filter"; 6 }; 7 8 outputs = 9 { 10 self, 11 nixpkgs, 12 flake-utils, 13 nix-filter, 14 }: 15 flake-utils.lib.eachDefaultSystem ( 16 system: 17 let 18 pkgs = nixpkgs.legacyPackages.${system}; 19 20 git-pages = pkgs.buildGo125Module { 21 pname = "git-pages"; 22 version = "0"; 23 24 src = nix-filter { 25 root = self; 26 27 include = [ 28 "go.mod" 29 "go.sum" 30 "main.go" 31 32 (nix-filter.lib.inDirectory "src") 33 ]; 34 }; 35 36 buildInputs = with pkgs; [ 37 pkgsStatic.musl 38 ]; 39 40 ldflags = [ 41 "-linkmode external" 42 "-extldflags -static" 43 "-s -w" 44 ]; 45 46 vendorHash = "sha256-CIEDUWnd5Sth3yYNtw+w1ucYqLCacO34G+EDXVe4+6o="; 47 }; 48 in 49 { 50 formatter = pkgs.nixfmt-tree; 51 52 devShells.default = pkgs.mkShell { 53 inputsFrom = [ 54 git-pages 55 ]; 56 57 packages = with pkgs; [ 58 caddy 59 ]; 60 }; 61 62 packages = { 63 inherit git-pages; 64 default = git-pages; 65 }; 66 } 67 ); 68}