6
6
flake-utils . url = "github:numtide/flake-utils" ;
7
7
} ;
8
8
9
- outputs = { self , nixpkgs , flake-utils } :
9
+ outputs =
10
+ {
11
+ self ,
12
+ nixpkgs ,
13
+ flake-utils ,
14
+ } :
10
15
let
11
16
systems = [
12
17
"x86_64-linux"
17
22
18
23
forAllSystems = f : nixpkgs . lib . genAttrs systems ( system : f system ) ;
19
24
20
- mkAuthConfig = system :
25
+ mkAuthConfig =
26
+ system :
21
27
let
22
28
pkgs = nixpkgs . legacyPackages . ${ system } ;
23
29
lib = pkgs . lib ;
27
33
pname = "supabase-auth" ;
28
34
version = "0.1.0" ;
29
35
src = ./. ;
30
-
36
+
31
37
vendorHash = "sha256-QBQUUFWT3H3L7ajFV8cgi0QREXnm0ReIisD+4ACfLZQ=" ;
32
-
33
- buildFlags = [ "-tags" "netgo" ] ;
38
+
39
+ buildFlags = [
40
+ "-tags"
41
+ "netgo"
42
+ ] ;
34
43
doCheck = false ;
35
44
36
45
# Specify the main package
37
46
subPackages = [ "." ] ;
38
-
47
+
39
48
# Specify the output binary name
40
49
postInstall = ''
41
50
mv $out/bin/auth $out/bin/supabase-auth
88
97
authConfigOutput = pkgs . stdenv . mkDerivation {
89
98
name = "auth-config" ;
90
99
src = ./. ;
91
- buildInputs = [ pkgs . bash auth-service ] ;
100
+ buildInputs = [
101
+ pkgs . bash
102
+ auth-service
103
+ ] ;
92
104
93
105
buildPhase = ''
94
106
mkdir -p $out/etc $out/bin $out/lib/systemd/system
95
107
96
108
# Write the auth configuration
97
109
cat > $out/etc/auth.env <<EOF
98
110
# Auth configuration generated by Nix
99
- ${ lib . concatStringsSep "\n " ( lib . mapAttrsToList ( name : value : "${ name } =${ value } " ) config . config . auth . settings ) }
111
+ ${ lib . concatStringsSep "\n " (
112
+ lib . mapAttrsToList ( name : value : "${ name } =${ value } " ) config . config . auth . settings
113
+ ) }
100
114
EOF
101
115
102
116
# Write the systemd unit file
128
142
# Write a script to manage the auth service
129
143
cat > $out/bin/manage-auth <<EOF
130
144
#!/bin/sh
131
-
145
+
132
146
case "\$1" in
133
147
start)
134
148
echo "Starting auth service..."
135
149
${ auth-service } /bin/supabase-auth -c $out/etc/auth.env
136
150
# Execute steps if enabled
137
- ${ lib . optionalString config . config . steps . enable ( lib . concatStringsSep "\n " config . config . steps . commands ) }
151
+ ${ lib . optionalString config . config . steps . enable (
152
+ lib . concatStringsSep "\n " config . config . steps . commands
153
+ ) }
138
154
;;
139
155
stop)
140
156
echo "Stopping auth service..."
244
260
default = authConfigOutput ;
245
261
} ;
246
262
devShells . default = pkgs . mkShell {
247
- buildInputs = [
248
- pkgs . bash
263
+ buildInputs = [
264
+ pkgs . bash
249
265
auth-service
250
266
pkgs . go
251
267
pkgs . gopls
268
284
{
269
285
packages = forAllSystems ( system : ( mkAuthConfig system ) . packages ) ;
270
286
devShells = forAllSystems ( system : ( mkAuthConfig system ) . devShells ) ;
287
+ formatter = forAllSystems ( system : nixpkgs . legacyPackages . ${ system } . nixfmt-tree ) ;
271
288
} ;
272
- }
289
+ }
0 commit comments