Home

jolheiser.com @0a704fe769e00216a98803961112d1336572721d - refs - log -
-
https://git.jolheiser.com/jolheiser.com.git
my website
jolheiser.com / flake.nix
- raw -
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
{
  inputs = {
    nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
    tailwind-ctp.url = "git+https://git.jojodev.com/jolheiser/tailwind-ctp";
    tailwind-ctp-lsp.url = "git+https://git.jojodev.com/jolheiser/tailwind-ctp-intellisense";
  };

  outputs =
    inputs:
    let
      systems = [
        "x86_64-linux"
        "i686-linux"
        "x86_64-darwin"
        "aarch64-linux"
        "armv6l-linux"
        "armv7l-linux"
      ];
      forAllSystems =
        f:
        inputs.nixpkgs.lib.genAttrs systems (
          system:
          f {
            pkgs = import inputs.nixpkgs {
              inherit system;
              overlays = [ inputs.self.overlays.default ];
            };
          }
        );
    in
    {
      overlays.default = final: prev: {
        tailwind-ctp = inputs.tailwind-ctp.packages.${prev.system}.default;
        tailwind-ctp-lsp = inputs.tailwind-ctp-lsp.packages.${prev.system}.default;
      };
      packages = forAllSystems (
        { pkgs }:
        {
          default = pkgs.buildGoModule {
            pname = "jolheiser.com";
            version = "site";
            src = ./.;
            vendorHash = inputs.nixpkgs.lib.fileContents ./go.mod.sri;
            nativeBuildInputs = [ pkgs.tailwind-ctp ];
            excludedPackages = ".";
            postBuild = ''
              go generate
              mv dist $out
            '';
          };
        }
      );
      devShells = forAllSystems (
        { pkgs }:
        {
          default = pkgs.mkShell {
            nativeBuildInputs = with pkgs; [
              go
              tailwind-ctp
              tailwind-ctp-lsp
              vscode-langservers-extracted
            ];
          };
        }
      );
    };
}